Question

Je me demande quel est le moyen de masquer une partie d'une vue similaire à la façon dont UIAlertView supprime tout en gris sauf la boîte de message? À l’heure actuelle, j’utilise une autre vue personnalisée au-dessus de la zone cible, mais elle n’a pas l’air aussi agréable.

Des idées?

Était-ce utile?

La solution

J'obtiens de bons résultats en utilisant la méthode que vous avez déjà essayée. Peut-être que tripoter l’alpha est une bonne idée?

mask = [[UIView alloc] initWithFrame:window.frame];
[mask setBackgroundColor:[UIColor colorWithWhite:0.0 alpha:0.78]];
[self.view addSubview:mask];

Ensuite, dans votre code, vous pourrez le supprimer:

[mask removeFromSuperview];
or
[mask setHidden:YES];

Si vous voulez l'améliorer encore, je suppose que vous pouvez essayer d'utiliser un dégradé, soit par programme, soit sous forme d'image, et de l'utiliser pour assombrir les bords de l'écran de sorte que le contenu que vous affichez au premier plan semble être la source de lumière.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top