我有一个NSMutableArray,它包含一个“MyClass”类型的对象列表,每个对象都有一个名为“name”的参数,类型为“NSString”。我需要在TableView中显示这个列表,在我的“cellForRowAtIndexPath”方法中,我有以下几行:
cell.textLabel.text = [[SingletonClass sharedInstance].myArray objectAtIndex:[indexPath row]].name;
这里,SingletonClass是我的DataLayer,myArray是包含对象列表的NSMutableArray。我收到错误:“属性'名称”在类型'id'的对象上找不到“,所以我需要弄清楚如何正确地转换为”MyClass“,并检索其”name“参数,以便它可以显示在表中。
答案 0 :(得分:1)
((MyClass*)[[SingletonClass sharedInstance].myArray objectAtIndex:[indexPath row]]).name
答案 1 :(得分:1)
如果你想要丑陋的代码:
cell.textLabel.text = (MyClass *)([[SingletonClass sharedInstance].myArray objectAtIndex:[indexPath row]]).name;
如果您想要更具可读性的代码,请改为使用消息发送方式调用:
cell.textLabel.text = [[[SingletonClass sharedInstance].myArray objectAtIndex:[indexPath row]] name];