キャンセルボタンを一番下にして、動的にボタンを追加するにはどうすればいいのだろうか?
UIActionSheet Class Referenceを読むと
- (id)initWithTitle:(NSString *)title delegate:(id < UIActionSheetDelegate >)delegate cancelButtonTitle:(NSString *)cancelButtonTitle destructiveButtonTitle:(NSString *)destructiveButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ...{ }となっており、ボタンを追加するには、NSStringで設定しなければならない。
NSArrayに格納されているNSStringを設定するには結構やっかいな問題で、どうすればいいかなーっと思っていたら、stackoverflowのUse NSArray to specify otherButtonTitles?を読むとgoodな答えがあった。
これ上通りに試しましたけど、すんごい便利。UIActionSheet *alert = [[UIActionSheet alloc] initWithTitle: titleString
via:Use NSArray to specify otherButtonTitles?
delegate: self
cancelButtonTitle: nil
destructiveButtonTitle: nil
otherButtonTitles: nil];
for( NSString *title in titles) {
[alert addButtonWithTitle:title];
}
[alert addButtonWithTitle:cancelString];
alert.cancelButtonIndex = [titles count];
0 コメント:
コメントを投稿