Riesci a controllare la dimensione del testo e così viaallineamento sul foglio di azione? Inoltre, puoi decidere l'ordine in cui il tasto distruttivo e gli altri pulsanti appariranno sul foglio d'azione? Lo screenshot come lo schermo è quello che sto cercando di creare.
Grazie in anticipo
risposte:
0 per risposta № 1Ho fatto qualcosa di simile per personalizzare un foglio di azione:
- (void) showPopup { unitPicker * pc = [[unitPickeralloc] init]; UIActionSheet * popupQuery = [[UIActionSheet alloc] initWithTitle: @ "Unità" delegato: pc cancelButtonTitle: nil destructiveButtonTitle: nil otherButtonTitles: nil ];
[pc setParent:self];
popupQuery.actionSheetStyle = UIActionSheetStyleBlackOpaque;
[popupQuery showInView:self.view];
[popupQuery setBounds:CGRectMake(0,0,320, 350)];
[pc setAs:popupQuery];
[popupQuery addSubview:pc.view];
}
Il problema è che "unitPicker" è stato derivato da un UIControllerView, ma ha implementato il protocollo UIActionSheetDelegate. Ha fornito le due funzioni:
- (void)actionSheet:(UIActionSheet *)actionSheet willDismissWithButtonIndex:(NSInteger)buttonIndex;
- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex;
Per far fronte a qualsiasi pulizia. La parte più importante era che il formato di unitPicker è stato creato da un NIB, come con qualsiasi UIViewController.
I pulsanti nella vista hanno eliminato il foglio di azione con il codice nei loro gestori di touchUpInside:
[as dismissWithClickedButtonIndex:0 animated:TRUE];
(Puoi vedere nel codice sopra che "as" è stato impostato per essere l'oggetto actionSheet).