在我的iOS应用程序中,我有一个UIViewController ViewController,它提供了一个部分由TableView组成的视图。 UITableViewCells包含一个UISegmentControl。当调用UISegmentControl的valueHasChanged动作时,我想要弹出一个弹出窗口。这是在操作中调用的代码:
//Check that the text field isn't empty:
if self.TextField.text == "" {
self.Status.selectedSegmentIndex = 0
let viewController = ViewController()
viewController.alertStatusChangedForEmptyTextField(self)
}
这是我在ViewController类中创建的弹出窗口,它检查同一个UITableViewCell中的相邻文本字段是否为空:
//Alert function that handles when toggle is set even though there is no content.
func alertStatusChangedForEmptyTextField(sender: AnyObject) {
let alert = UIAlertController(title: "Text field has no contents", message: "Please enter a text.", preferredStyle: UIAlertControllerStyle.Alert);
alert.addAction(UIAlertAction(title: "Ok", style: UIAlertActionStyle.Cancel, handler: nil));
showViewController(alert, sender: self);
}
我在ViewController的viewDidLoad函数中弹出一个错误,但是来自此函数中的showViewController方法调用(我知道因为我已经尝试只注释掉这一行,然后一切正常)
如何从UITableViewCell中调用弹出窗口(ViewController)?很高兴听到涉及完全不同方法的建议(创建自定义UITableView子类?在TableViewCell类中定义的函数?)
另外,我没有根视图控制器。
答案 0 :(得分:0)
检查故事板的价值,很有可能你会发现它没有;
storyboard.instantiateViewControllerWithIdentifier("PopMenuViewController") as! PopMenuViewController
我试图弄清楚如何从自定义tableview单元格元素中显示弹出窗口。如果你认为它比分享方法:)