我花了几个小时试图弄清楚如何创建/然后让自定义inputView工作.
我有一个TextInputs网格(想想拼字游戏板)按下时应该加载自定义inputView来插入文本.
我有一个TextInputs网格(想想拼字游戏板)按下时应该加载自定义inputView来插入文本.
我创建了一个.xib文件,其中包含自定义inputView的UI元素.我能够创建一个CustomInputViewController并显示inputView,但永远无法获得实际的TextInput来更新它的值/文本.
苹果文档似乎很清楚如何使这个工作,我已经看到的许多教程一直在使用Obj-C(由于现在似乎无法在swift中完成的小事情,我无法转换) .
为多个textInputs(委托链,控制器,.xibs,视图等)创建customInputView应该实现的总体架构和必要的代码片段是什么?
解决方法
你不应该经历所有那些麻烦.在iOS 8中有一个名为UIAlertController的新类,您可以在其中添加TextField以供用户输入数据.您可以将其设置为Alert或ActionSheet的样式.
例:
let alertAnswer = UIAlertController(title: "Input your scrabble Answer",message: nil,preferredStyle: .Alert) // or .ActionSheet
现在你有控制器,添加字段:
alertAnswer.addTextFieldWithConfigurationHandler { (get) -> Void in getAnswer.placeholder = "Answer" getAnswer.keyboardType = .Default getAnswer.clearsOnBeginEditing = true getAnswer.borderStyle = .RoundedRect } // add as many fields as you want with custom tweaks
添加操作按钮:
let submitAnswer = UIAlertAction(title: "Submit",style: .Default,handler: nil) let cancel = UIAlertAction(title: "Cancel",style: .Cancel,handler: nil) alertAnswer.addAction(submitAnswer) alertAnswer.addAction(cancel)
随时出示控制器:
self.presentViewController(alertAnswer,animated: true,completion: nil)
例如,它的外观如下: