动态填写行动表

时间:2017-06-01 17:10:20

标签: ios swift uitableview uiactionsheet

我正在寻找一种方法,使用来自对象列表的数据创建一个浮动列表(AlertView内的TableView),然后单击一个元素,为我提供对所选对象的引用。

为此,我使用了一个动作表和一个for循环,如下所示

@IBAction func btnShowList_onClick(_ sender: Any) {
    let alertController = UIAlertController(title: "Action Sheet", message: "List of Superheroes", preferredStyle: .actionSheet)

    for item in arrSuperHeroes{
        let superbutton = UIAlertAction(title: (item as! SuperHeroe).nombre , style: .default, handler: { (action) in
            self.superSel = item as! SuperHeroe
            print(self.superSel.name)
        })
        alertController.addAction(superbutton)
    }

    self.navigationController!.present(alertController, animated: true, completion: nil)
}

但是我在执行最后一行时遇到了这个错误

  

致命错误:在展开Optional值(lldb)时意外发现nil

任何人都可以帮助我吗?怎么了?还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

我认为您需要提供以下警告:

self.present(alertController, animated: true, completion: nil)