2010-10-19 9 views
0

alt text Pouvez-vous contrôler la taille du texte et son alignement sur la feuille d'action? Aussi, Pouvez-vous décider de l'ordre dans lequel le bouton destructif et les autres boutons apparaîtront sur la feuille d'action? L'écran de capture d'écran est ce que j'essaie de créer.UIActionSheet Personnalisation

Merci à l'avance

Répondre

0

Je l'ai fait quelque chose comme ça pour personnaliser une feuille d'action:

- (void) {showPopup unitPicker * pc = [[unitPicker alloc] init]; UIActionSheet * popupQuery = [[UIActionSheet alloc] initWithTitle: @ "Unités" délégué: pc cancelButtonTitle: néant destructiveButtonTitle: néant otherButtonTitles: néant ];

[pc setParent:self]; 
popupQuery.actionSheetStyle = UIActionSheetStyleBlackOpaque;  
[popupQuery showInView:self.view]; 

[popupQuery setBounds:CGRectMake(0,0,320, 350)]; 

[pc setAs:popupQuery]; 
[popupQuery addSubview:pc.view]; 

}

L'astuce étant que "unitPicker" a été dérivé d'un UIControllerView, mais mis en œuvre le protocole UIActionSheetDelegate. Il a fourni les deux fonctions:

- (void)actionSheet:(UIActionSheet *)actionSheet willDismissWithButtonIndex:(NSInteger)buttonIndex; 
- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex; 

Pour tout nettoyage. La grande partie était que le format de unitPicker a été créé à partir d'un NIB, comme il le ferait avec n'importe quel UIViewController.

Les boutons de la vue a rejeté la actionSheet avec le code dans leurs gestionnaires de touchUpInside:

[as dismissWithClickedButtonIndex:0 animated:TRUE]; 

(Vous pouvez voir dans le code ci-dessus que « comme » a été établi pour être l'objet actionSheet).