UIAlertController
を使用しているときに、空のタイトルと空のメッセージでUIActionSheet
を表示したい場合、タイトルやメッセージの予想される配置のフレームが残ります。
これを変更して、次のようなActionSheet
のみを表示するにはどうすればよいですか。
設定
サインアウト
キャンセルしますか?
ありがとう!
このコードでUIAlertControllerを作成するとき、タイトルの間隔はありません。
[UIAlertController alertControllerWithTitle:nil
message:nil
preferredStyle:UIAlertControllerStyleActionSheet];
タイトルとメッセージまたは空の文字列にnilを渡しますか?
更新Swift 4 ::
let alert = UIAlertController(title: nil, message: nil, preferredStyle: UIAlertControllerStyle.actionSheet)
タイトルとメッセージのパラメーターにnilを渡すだけです。
ありがとう
特定のケースに応じてランタイムを変更する場合は、次のように記述します。
actionController.title = nil
actionController.message = nil
Swift 2.2では、以下のコードを使用できます。サインアウトアクションボタンの色も変更しました
let actionSheet: UIAlertController = UIAlertController(title: nil, message: nil, preferredStyle: .ActionSheet)
self.presentViewController(actionSheet, animated: true, completion: nil)
let settingsActionButton: UIAlertAction = UIAlertAction(title: "Settings", style: .Cancel) { action -> Void in
print("Settings Tapped")
}
reportActionSheet.addAction(settingsActionButton)
let signOutActionButton: UIAlertAction = UIAlertAction(title: "Signout", style: .Default)
{ action -> Void in
//Clear All Method
print("Signout Tapped")
}
signOutActionButton.setValue(UIColor.redColor(), forKey: "titleTextColor")
actionSheet.addAction(signOutActionButton)
let cancelActionButton: UIAlertAction = UIAlertAction(title: "Cancel", style: .Cancel) { action -> Void in
print("Cancel Tapped")
}
reportActionSheet.addAction(cancelActionButton)
UIAlertController * controller = [UIAlertController alertControllerWithTitle:@ "" message:@ "" preferredStyle:UIAlertControllerStyleAlert]; //スタイルチェック
UIAlertAction *first = [UIAlertAction actionWithTitle: @"Login with Facebook" style: UIAlertActionStyleDefault handler:^(UIAlertAction *action)
{
//write to perform action
}];
[controller addAction: first];
UIAlertAction *second = [UIAlertAction actionWithTitle: @"Guest User" style: UIAlertActionStyleDefault handler:^(UIAlertAction *action)
{//アクションを実行するために書き込みます
}];
[controller addAction:second];
UIAlertAction *third=[UIAlertAction actionWithTitle:@"Registered User" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action)
{
//write to perform action
}];
[controller addAction:third];
[self presentViewController: controller animated: YES completion: nil];