苦苦挣扎,为alertview添加多个文本字段

时间:2016-12-17 20:07:21

标签: ios swift uialertview

我正在尝试创建一个警报视图,在点击广告按钮后将一个或多个项目添加到我的表格视图中。按下添加按钮时,警报视图应显示三个文本字段,用于显示项目名称的价格和数量,按下确定按钮后,它将添加该项目,但数量是多次。当我点击按钮时,我收到以下错误:

$git reset HEAD <filename>

以下是功能:

Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArray0 objectAtIndex:]: index 0 beyond bounds for empty NSArray'

我认为在将视图添加到警报视图时我遗漏了一些东西,但我看不出我认为该错误表明它无法找到文本字段。我不能确定。任何帮助都会很棒。谢谢!

2 个答案:

答案 0 :(得分:1)

您不应尝试操纵警报控制器的视图层次结构。而是使用方法addTextField(configurationHandler:)将文本字段添加到警报控制器。我建议看看Xcode中的UIAlertController类引用。这是有据可查的。

编辑:

另外,我建议不要将UIAlertController称为“警报视图”。在以前的iOS版本中,我们使用了一个名为UIAlertView的类,但现在已弃用。术语“alertview”将使人们认为你正在使用旧的弃用类。

答案 1 :(得分:0)

你见过其他{{3}}吗?如果是这样,试着推断。错误消息似乎表示您的方法调用之间的nil对象,因此请确保您使用这些方法之间的共享引用。在添加UITextfield之前和之后检查对象值以验证控制器的状态。添加alertController作为对UIViewController类的引用,并在进行所需更改时检查其状态。