Lorsque vous essayez de supprimer une note dans l'application Notes de l'iPhone, une feuille UIAction apparaît. La feuille est translucide (mais pas noire translucide). Comment cela est-il réalisé? Est-il possible de rendre l'arrière-plan de UIActionSheet une certaine couleur?Développement iPhone: Comment créer un fond coloré ou translucide pour UIActionSheet?
Répondre
je mets en œuvre généralement la méthode déléguée suivante:
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet
Juste pour faire un échantillon. Dans ce cas, j'utilise un étiré .png comme arrière-plan:
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
UIImage *theImage = [UIImage imageNamed:@"detail_menu_bg.png"];
theImage = [theImage stretchableImageWithLeftCapWidth:32 topCapHeight:32];
CGSize theSize = actionSheet.frame.size;
// draw the background image and replace layer content
UIGraphicsBeginImageContext(theSize);
[theImage drawInRect:CGRectMake(0, 0, theSize.width, theSize.height)];
theImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[[actionSheet layer] setContents:(id)theImage.CGImage];
}
et voici le résultat: alt text http://grab.by/4yF1
Il me semble noir (note: en utilisant 2.2.1). La seule raison pour laquelle il y a une couleur est à cause du jaune derrière. Une option serait d'utiliser l'arrière-plan transparent noir et de trouver la taille et la vitesse de la feuille d'action. Créez ensuite une vue et animez-la en même temps que vous affichez la feuille d'action, juste en dessous, pour lui donner une teinte différente de la couleur naturellement derrière la feuille d'action. Vous devriez aussi rendre la vue en couleur translucide afin que vous puissiez voir derrière cela aussi.
Je ne sais pas si vous le pouvez, mais vous pouvez également essayer d'ajuster l'opacité de la feuille d'action elle-même.
Réglage de la L'opacité de la feuille d'action affecte également les boutons. – Boon
Si vous regardez l'application Notes, vous remarquerez que les boutons ne sont pas 100% opaques. –
Vous pouvez définitivement ajuster l'opacité en définissant la valeur alpha. Interface Builder vous permet de modifier directement la valeur, mais dans le code, je pense que vous feriez:
[[myActionSheet view] setOpaque:NO];
[[myActionSheet view] setAlpha:0.5];
Je ne sais pas si vous avez besoin de l'appel setOpaque ou non - je pense qui est utilisé pour optimiser les performances, comme l'iPhone n'essaiera pas de rendre quelque chose caché par la vue opaque.
Ce n'est pas trop difficile. Vous pouvez utiliser le code suivant:
CGSize mySize = myActionSheet.bounds.size;
CGRect myRect = CGRectMake(0, 0, mySize.width, mySize.height);
UIImageView *redView = [[[UIImageView alloc] initWithFrame:myRect] autorelease];
[redView setBackgroundColor:[UIColor colorWithRed:1.0 green:0.0 blue:0.0 alpha:0.5]];
[myActionSheet insertSubview:redView atIndex:0];
Assurez-vous que vous présentez le UIActionSheet avant de le faire ou la taille ne serez pas défini. Cela le rend laid genre de, mais vous pouvez faire quelque chose comme:
[myActionSheet showInView:self.view];
if (!redAdded) {
redAdded = YES;
//THE ABOVE CODE GOES HERE
}
Si vous avez lié la taille à la vue, vous n'aurez pas à faire la dernière partie. A également dû remplacer x et y avec la taille et la largeur: CGSize mySize = self.view.bounds.size; CGRect myRect = CGRectMake (0, 0, mySize.height, mySize.width); – StuartM
Utilisation de - (void) willPresentActionSheet: (UIActionSheet *) actionSheet est un meilleur hook en général –
Vous pouvez également utiliser une image plutôt qu'une couleur en définissant un UIImage sur le UIImageView: [imageBlocketImage: [UIImage imageNamed: @ "captainplanet. png "]]; – ninehundredt
Vous pouvez utiliser le code ci-dessous:
actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackOpaque;
ou
actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackTranslucent;
Merci, c'est exactement ce que je cherchais – GeneCode
actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackTranslucent;
- 1. Comment créer un UIViewController modal translucide?
- 2. GTK: créer un bouton régulier coloré
- 3. Comment créer dynamiquement un UIImage 1x1 coloré sur l'iPhone?
- 4. iPhone Désactivation des boutons UIActionSheet
- 5. Développement iPhone StoreKit: Impossible de créer un utilisateur de test?
- 6. Développement Web pour iPhone
- 7. iphone développement-léopard ou léopard des neiges?
- 8. Comment créer un UITableViewCell avec un fond transparent
- 9. Comment créer un certificat pour le développement local avec SSL?
- 10. Comment rejeter UIActionSheet automatiquement
- 11. Développement iPhone - Limitation de mémoire pour l'application iphone
- 12. Développement iPhone - UITableViewCellStyleValue2
- 13. Implémentation de développement iPhone: SQLite ou service Web
- 14. Créer .ipa pour iPhone
- 15. UITabController développement iphone
- 16. iTunes store - iPhone App ... fond personnalisable?
- 17. Comment créer une clé privée pour iPhone Distribution Certificate?
- 18. Comment créer une bibliothèque statique pour iPhone?
- 19. Comment créer des projets hybrides Xcode pour Mac et iPhone?
- 20. Créer des paramètres pour myApplication Iphone
- 21. Développement iPhone sur un téléphone jailbreaké
- 22. UIActionSheet Tinting
- 23. Développement pour iPhone sur ordinateur PPC
- 24. WPF - Application translucide
- 25. Développement de jeux iPhone
- 26. Ressources de développement Iphone
- 27. UIView personnalisé via UIActionSheet
- 28. iphone mpmovieplayercontroller mp3 montrant le fond noir
- 29. Comment puis-je accélérer ou ralentir une piste de musique de fond avec iPhone SDK?
- 30. iPhone cellules personnalisées - fond étiquette transparente
Hey pourriez-vous s'il vous plaît poster un lien vers cette image?Ça a l'air vraiment sympa, merci et bonne solution pour remplacer l'image de fond! – JonasG
cela ne fonctionne pas pour moi !!! – Fay007