Swift:UILabel.text值显示nil值

时间:2018-04-23 10:38:05

标签: swift uitableview nsdictionary swift4.1

在cellForRowAtIndexPath方法中,我创建了一个自定义单元格。单元格有一个标签来显示项目名称。为标签指定值后,打印时显示nil值。这样标签就无法在表格视图中显示。

po print(cell.project_title?.text) (or) print(cell.project_title?.text)

这种方式我用来显示标签的值

{{1}}

2 个答案:

答案 0 :(得分:0)

如果print语句返回nil,那只能表示cell.project_title为nil,因为cell和.text都不是选项。在尝试设置.text属性之前,请确保初始化.project_title属性。

答案 1 :(得分:0)

@ A.Yesuvin

将此行放在可选绑定(如果允许)语句

之上
cell.project_title?.text = "test_text"

如果然后当您打印print(cell.project_title?.text)及其" test_text"时,您就知道您不允许这样做:self.leadsArray[indexPath.row] as? NSDictionary

如果是这种情况,那么尝试做@vadian所说的并使用原生的Swift Dictionary([String:Any])。

如果if语句中的代码实际运行,则仔细检查密钥" project_title"实际上是在字典里。

如果是这样,那么......好吧,修理它。

另外只是一个提示:继续使用'可选绑定'而不是强行展开/强制转换导致你最终会遇到错误:(leadsDict.object(forKey: "project_title") as! String 据我们所知,这可能就是" error / nil"规定。