【Swift5】WatchOSでアラートを表示する方法(Alert・ActionSheet)【Objective-C】
WatchOSでアラートを表示する方法を紹介します。
アラートはAlertとActionSheetの2種類あるので両方紹介します。
アラート(Alert)を表示する方法
Swift5
let alertAction1 = WKAlertAction.init(title: "テスト1",
style: .default,
handler: {
print("テスト1")
})
let alertAction2 = WKAlertAction.init(title: "テスト2",
style: .default,
handler: {
print("テスト2")
})
let alertAction3 = WKAlertAction.init(title: "キャンセル",
style: .default,
handler: {
print("キャンセル")
})
self.presentAlert(withTitle: "タイトル",
message: "メッセージ",
preferredStyle: .alert,
actions: [ alertAction1, alertAction2, alertAction3])
Objective-C
WKAlertAction *alertAction1 = [WKAlertAction actionWithTitle:@"テスト1"
style:WKAlertActionStyleDefault
handler:^{
NSLog(@"テスト1");
}];
WKAlertAction *alertAction2 = [WKAlertAction actionWithTitle:@"テスト2"
style:WKAlertActionStyleDefault
handler:^{
NSLog(@"テスト2");
}];
WKAlertAction *alertAction3 = [WKAlertAction actionWithTitle:@"キャンセル"
style:WKAlertActionStyleCancel
handler:^{
NSLog(@"キャンセル");
}];
[self presentAlertControllerWithTitle:@"タイトル"
message:@"メッセージ"
preferredStyle:WKAlertControllerStyleAlert
actions:@[ alertAction1, alertAction2, alertAction3]];
アクションシート(ActionSheet)を表示する方法
アラートとアクションシートの切り替えはpreferredStyleを変更するだけで行えます。
Swift5
self.presentAlert(withTitle: "タイトル",
message: "メッセージ",
preferredStyle: .actionSheet,
actions: [ alertAction1, alertAction2, alertAction3])
Objective-C
[self presentAlertControllerWithTitle:@"タイトル"
message:@"メッセージ"
preferredStyle:WKAlertControllerStyleActionSheet
actions:@[ alertAction1, alertAction2, alertAction3]];