2016-04-14 1 views
0

2つのアラートをポップアップして、アプリの2つのプレーヤー名を入力しようとしています。私は、viewDidLoadとviewDidAppear関数でAlertControllerコードを使用しようとしました。一方はviewDidAppearでうまく動作しますが、他のコードの実行を続けるため、2番目の呼び出し時にエラーがスローされます。アプリを開いたときに、次々にユーザー入力を含む2つのアラートを開くことができますか?

理想的には、「プレイヤー1の名前を入力してください」と言い、名前を入力する機会を与えてから、サブミットが押されたときに2番目のアラートで実行を開始し、プレイヤー2の名前を入力してください。

+0

どのようなエラーが投げられますか?私たちはあなたを助けるためにさらに多くの情報が必要です。あなたのコードを掲載し、私達にエラーを与え、私たちはあなたをさらに助けることができます。 –

答えて

1

別のアラートを表示するUIAlertActionのハンドラを実装する必要があります。このコードのスニペットを見てください:

let firstAlert = UIAlertController(title: "Alert", message: "Message", preferredStyle: UIAlertControllerStyle.Alert) 
firstAlert.addTextFieldWithConfigurationHandler({ 
    textField in 
    textField.placeholder = "Some input" 
}) 

let secondAlert = UIAlertController(title: "Alert", message: "Message", preferredStyle: UIAlertControllerStyle.Alert) 
secondAlert.addTextFieldWithConfigurationHandler({ 
    textField in 
    textField.placeholder = "Some input 2" 
}) 

firstAlert.addAction(UIAlertAction(title: "Click", style: UIAlertActionStyle.Default, handler: { 
    action in 
    print("text from first alert : + \(firstAlert.textFields?[0].text)") 
    self.presentViewController(secondAlert, animated :true, completion :nil) 
})) 

secondAlert.addAction(UIAlertAction(title: "Click", style: UIAlertActionStyle.Default, handler: { 
    action in 
    print("text from second alert : + \(firstAlert.textFields?[0].text)") 
})) 


self.presentViewController(firstAlert, animated: true, completion: { 
}) 

あなたはこのコードの行が最初のUIViewControllerを登場にviewDidLoadまたはviewDidAppear機能、例えば、この使用を使用することができます。

希望しますか?

+0

私はこの作業に時間を費やしていました。あなたのソリューションは完璧に機能します。ありがとうございました! – ldouglas956

関連する問題