【问题标题】:AppClip - this class is not key value coding-compliant for the key labelColorAppClip - 此类与键 labelColor 的键值编码不兼容
【发布时间】:2021-12-28 13:28:59
【问题描述】:

我在 AppStore 中有一个现有的应用程序,我正在为它构建一个 POC AppClip。我已经创建了 AppClip(使用情节提要),并且正在尝试重用 Xcode 中主应用程序中的类。我有自定义 UILabels 和 UIButtons(包括自定义 UIColor 和 UIFont)。我已将这些类添加到 AppClip 的目标成员中。当我在情节提要中构建视图时,一切看起来都是我想要的。所有 IBDesignables 都按预期工作。当我构建 AppClip 并在模拟器中运行它时,它会运行但没有我的自定义类。所以我的标签看起来像通用的 UILabels,我的按钮看起来像通用的 UIButtons。

我已经仔细检查了视图控制器中的所有插座,并且一切设置正确。我确实得到了屏幕上每个标签和按钮的键值编码错误。

无法在 (UILabel) 上设置 (labelColor) 用户定义的检查属性:[ setValue:forUndefinedKey:]:此类与键 labelColor 的键值编码不兼容。

如何在运行时在我的主应用和 AppClip 之间共享类?是否需要以某种方式明确包含这些内容?

更新:我认为问题是我的自定义 XXLabel & XXButton & XXColor & XXFont 类在 appclip 构建时不包括在内。我已将这些文件的引用添加到 appclip,并将这些文件添加到 appclip 项目设置的构建阶段。

该应用仍将我的标签加载为 UILabel 而不是 XXLabel(有些带有 UIButton)。

【问题讨论】:

    标签: ios swift xcode ibdesignable apple-appclips


    【解决方案1】:

    这不一定是插座的问题,如果用户定义的运行时属性无效,您会收到此消息。

    尝试在您的项目/工作区中搜索labelColor。如果它出现在故事​​板上,它将显示在结果中。单击搜索结果以导航到有问题的视图组件。

    示例

    我在 UIView 上设置了无效属性

    崩溃了

    [<UIView 0x7fa8c5f3f200> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key notAProperty.

    【讨论】:

    • 感谢您的回复。 labelColor 是我的 XXButton 类中的 IBDesignable 并在情节提要上正确显示。当我构建以在模拟器上显示时,我得到了这个错误。 labelColor、style 和 labelText 都在运行时属性中并且都设置好了。这在整个应用程序中都是一样的,而且效果很好——只是在我运行 AppClip 时不行。是否有可能我启动 AppClip 有误?
    • 公平点,我不确定那种情况,抱歉
    猜你喜欢
    • 2017-09-27
    • 2015-08-27
    • 2011-03-17
    • 2012-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多