【问题标题】:-[UITableView setStyle:] in iOS 6 crashing the app (but not in iOS 5.1)-iOS 6 中的 [UITableView setStyle:] 使应用程序崩溃(但在 iOS 5.1 中没有)
【发布时间】:2012-09-20 16:05:22
【问题描述】:

由于某些原因,我们必须将属性从 NSDictionary 设置为 UIView
一切都很好,直到 iOS 6 发布。现在-[UITableView setValue:value forKey:@"style"] 正在使应用程序崩溃。在 iOS 6 中它调用 setValue:forUndefinedKey: 但在 iOS 5.1 中它没有(然后一切正常)。我知道style UITableView 的属性是只读的,但是……为什么?我有自己的setValue:forUndefinedKey: 实现,但我不想以某种方式过滤此类属性(这很难)。

【问题讨论】:

    标签: objective-c ios ios5 ios6 ios5.1


    【解决方案1】:

    我知道样式 UITableView 的属性是只读的但是...为什么?

    因为 Apple 决定这样做,而且他们可能有一个很好的理由。不要尝试设置只读属性,它们会使您的应用崩溃。

    【讨论】:

    • 它可能是只读的,因为样式决定了很多布局和视图设置......这很难在每个单元格中多次执行。
    • @H2CO3 没关系,但我刚刚阅读了更改列表,没有关于此“功能”的信息。还有关于分组表的背景。某处有完整的变更清单吗?我什至不知道我下次会找到什么。
    • @efpies 事情是苹果不必表明这一变化。这个属性一直是只读的,而且似乎只是一个可以使用 KVC 设置的私有特性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多