0

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

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

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

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

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

该应用程序仍将我的标签加载为 UILabels 而不是 XXLabels(有些带有 UIButton)。

4

1 回答 1

0

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

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

例子

我在 UIView 上设置了无效属性

用户定义的运行时属性无效

它崩溃了

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

于 2021-11-17T15:19:44.213 回答