【问题标题】:Can I provide nil for the -dequeueReusableCellWithIdentifier: method?我可以为 -dequeueReusableCellWithIdentifier: 方法提供 nil 吗?
【发布时间】:2010-04-10 11:38:55
【问题描述】:

dequeueReusableCellWithIdentifier: 返回一个可重用的表格视图单元格 按标识符定位的对象。

  • (UITableViewCell *)dequeueReusableCellWithIdentifier:(NSString *)标识符

参数标识符一个字符串 标识要成为的单元对象 重复使用。默认情况下,可重用 单元格的标识符是它的类名, 但您可以将其更改为任意 价值。

好吧,如果默认情况下它是类名,我为什么要花很多脑力来考虑标识符?我可以只提供零吗?然后它会使用类名吗?或者他们在这里试图说什么?我必须自己制作一个带有类名的 NSString 并将其作为标识符提供吗?

【问题讨论】:

    标签: iphone uitableview


    【解决方案1】:

    没有。该标识符将用作 NSArray 的内部 NSMutableDictionary 中的键,以存储可重用单元格。如果您提供nil,则-dequeueReusableCellWithIdentifier: 中使用的-objectForKey: 将崩溃。

    此外,一个表格可能包含来自不同(子)类 UITableViewCell 的单元格,因此也没有好的默认值可以传递。

    【讨论】:

    • 所以如果我从类名中创建一个 NSString,那会是一个解决方案吗?
    • @mystify:是的。但我倾向于只给出一个虚拟字符串,例如@"." 作为标识符。
    猜你喜欢
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-27
    • 2013-06-04
    相关资源
    最近更新 更多