UITableViewCell附加信息
问题描述:
我需要完成很多工作。我尝试将附加信息附加到UITableViewCell。 tableViewCells得到的按钮,我subclassed做到这一点(我通过一个NSString)。UITableViewCell附加信息
现在,当用户点击一个tableRow时,我想要触发另一个方法并想传递相同的字符串。 我创建了UITableViewCell的子类,并将字符串添加到它。
但是我无法获得tableView:didSelectRowAtIndexPath:
中字符串的值。 这是因为UITableView中返回的UITableViewCell,而不是我的自定义子类:
[tableView cellForRowAtIndexPath:indexPath].passString
→ /* Property 'passString not found on object of type UITableViewCell */
当我做NSLog(@"%@", [tableView cellForRowAtIndexPath:indexPath]);
我可以看到日志的属性。
现在我的问题: 如何在其他方法中获得此子类属性?
我不想子类UITableView。我最终会继承像每的UIElement我使用的是:'(
感谢您的帮助,问候 朱利安
答
朱利安只需键入投UITableViewCell
到您的自定义类像
CustomCell *cell = (CustomCell*)[tableView cellForRowAtIndexPath:indexPath];
cell. passString; //it will work
或者你可以通过消息而不是点运算符[[tableView cellForRowAtIndexPath:indexPath] passString];
它会给你warni ng,但会工作,如果它是你的对象CustomCell。更喜欢使用第一种方法,因为我不喜欢我的代码中的警告。
答
感谢您的回答! 我知道它的工作。
对于第30微小的我只是不知道,是什么意思you'v和写来源为垃圾... :))
@jullian,而不是回答你的问题,你可以在我的答案评论...:无论如何,这很好,你有我的观点。 – 2012-03-19 15:59:10