2

このスクリーンショットのように、iOS 5 で削除の確認を表示する標準的な方法はありますか?

標準的な方法がない場合は、どのソリューションでも問題ありません。

削除確認

4

4 に答える 4

12

UIActionSheet破壊ボタンセット付きです。ドキュメントを参照してください。

例えば

// Create the action sheet
UIActionSheet *sheet = [[UIActionSheet alloc] initWithTitle:nil 
                                                   delegate:self 
                                          cancelButtonTitle:@"Cancel" 
                                     destructiveButtonTitle:@"Delete" 
                                         otherButtonTitles:nil];

...

- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex {
    if (buttonIndex == actionSheet.destructiveButtonIndex) {
        // Do the delete
    }
}
于 2012-05-28T16:19:33.637 に答える
2

UIActionSheetは次のように使用できます。

UIActionSheet *actionSheet = [UIActionSheet alloc] initWithTitle:@"Confirm" delegate:aDelegate cancelButtonTitle:nil destructiveButtonTitle:@"Delete" otherButtonTitles:@"Cancel", nil];
[actionSheet showFromRect:aRect inView:aView animated:YES];
于 2012-05-28T16:29:36.163 に答える
1

UIActionSheetは iOS 8 で廃止されました。代わりに、UIAlertController推奨スタイルのUIAlertControllerStyleActionSheet.

// Create a new alert, with an (optional) title and message
UIAlertController* alert = [UIAlertController alertControllerWithTitle:nil
                                                               message:nil
                                                        preferredStyle:UIAlertControllerStyleActionSheet];


// When style is set to UIAlertActionStyleDestructive, the button appears with red text
UIAlertAction* deleteAction = [UIAlertAction actionWithTitle:@"Delete"
                                                       style:UIAlertActionStyleDestructive
                                                     handler:^(UIAlertAction * action) {                                     
                                                          // ========
                                                          // Perform your delete operation here...
                                                          // ========
                                                      }];


// This cancel action will appear separated from the rest of the items
UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"Cancel"
                                                       style:UIAlertActionStyleCancel
                                                     handler:^(UIAlertAction * action) {}];


// Add the actions to the alert
[alert addAction:deleteAction];
[alert addAction:cancelAction];

// Present the sheet.
[self presentViewController:alert animated:YES completion:nil];

iOS の組み込みアプリケーション (連絡先、メッセージ、メールなど) は通常、これらのフィールドを使用しないことがわかっているため、通常、削除確認のタイトルとメッセージ フィールドを省略します。ボタンはそれ自体を物語っています。

于 2015-08-17T19:19:07.263 に答える
0

その UI コンポーネントのドキュメントを参照してください: UIActionSheetおよびUIActionSheetDelegate

于 2012-05-28T16:19:45.163 に答える