ここに、アラートビューを実行し、件名を尋ねるテキストフィールドを表示するこのコードがあります
alertController.addAction(UIAlertAction(title: "Ok", style: .Default, handler:{ (alertAction:UIAlertAction!) in
var textf= alertController.textFields[0] as UITextField
self.items += [self.textf]
println(self.items)
println(textf)
self.view .setNeedsDisplay()
}))
そして、このコードを使用して、コードの先頭でその関数から変数 items と textf を宣言します
var items = ["English"]
let textf = ""
しかし問題は、アプリを実行してアラートビューを表示するボタンをクリックし、件名を入力して[OK]をクリックすると、文字列を出力しようとするとこのエラーが発生することです。このエラーを出力するだけで、アプリを閉じません
<_UIAlertControllerTextField: 0x7f9d22d1c430; frame = (4 4; 229 16); text = 'irish'; clipsToBounds = YES; opaque = NO; gestureRecognizers = <NSArray: 0x7f9d22cc55f0>; layer = <CALayer: 0x7f9d22d1c6e0>>
items
入力したテキストがエラーに表示されますが、配列を印刷 すると印刷されるため、変数に追加されません
[English, ]
そしてそうではない
[English, irish]