web-dev-qa-db-ja.com

UIAlertControllerでタイトル/メッセージフレームを非表示にする方法

UIAlertControllerを使用しているときに、空のタイトルと空のメッセージでUIActionSheetを表示したい場合、タイトルやメッセージの予想される配置のフレームが残ります。

これを変更して、次のようなActionSheetのみを表示するにはどうすればよいですか。

設定
サインアウト
キャンセルしますか?

ありがとう!

UIAlertController example

46
vlin

このコードでUIAlertControllerを作成するとき、タイトルの間隔はありません。

[UIAlertController alertControllerWithTitle:nil
                                    message:nil
                             preferredStyle:UIAlertControllerStyleActionSheet];

タイトルとメッセージまたは空の文字列にnilを渡しますか?

114
aahrens

更新Swift 4 ::

let alert = UIAlertController(title: nil, message: nil, preferredStyle: UIAlertControllerStyle.actionSheet)

タイトルとメッセージのパラメーターにnilを渡すだけです。

ありがとう

5
Harjot Singh

特定のケースに応じてランタイムを変更する場合は、次のように記述します。

actionController.title = nil
actionController.message = nil

5
beee

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)
1
Mohsin Qureshi

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];
0
tushar lama