没有在自定义类下拉列表中显示 EDStarRating?
Posted
技术标签:
【中文标题】没有在自定义类下拉列表中显示 EDStarRating?【英文标题】:Not Showing EDStarRating in Custom class dropdown list? 【发布时间】:2016-05-14 12:52:28 【问题描述】:我在我的应用程序中集成了EDStarRating。它在一个视图控制器上运行良好。但奇怪的问题是它不能在另一个视图控制器上工作。
我已经搜索了几乎所有与此问题相关的谷歌问题,但没有什么对我有用。
我从我的应用程序中删除了EDStarRating
,再次添加。然后它也没有显示在自定义类下拉列表中。我已经检查了构建阶段,它就在那里。
另一个奇怪的事情是它没有显示在自定义类下拉列表中,但它在一个视图控制器上工作正常,没有问题。 同样的东西试图应用到另一个视图控制器上它给出了错误。
Unknown class _MyApplication14MYEDStarRating in Interface Builder file.
感谢帮助
【问题讨论】:
【参考方案1】:您是否同时编写了它可以使用的视图控制器和它在 Swift 中不可以使用的视图控制器?如果你得到一个 Objective-C 类的模块损坏的类名,这表明你遇到了这种错误的一种形式:
Objective-C class is interpreted as Swift class in Interface Builder
实际结果: Outlet 将引用 Swift 类 - 名称与 App 模块名称混淆,因此无法解析为该类的实例。
结果是子视图在界面生成器中具有原始类。如果是从'View'拖出来的,就是UIView的实例,如果是从'ImageView'拖出来的,就是UIImageView的实例。
我的建议是查看情节提要的来源(右键单击,打开为 > 源代码),然后手动将 customClass
从有效的实例复制到无效的实例。假设它们不同,Interface Builder 就会感到困惑。如果它们没有不同……那么还有一些更微妙的 Swift/Objective-C 桥接问题。可能只是在 Swift 中重写 EDStarRating 比弄清楚它要快,真的。
【讨论】:
感谢您的回答。我检查了工作视图控制器和非工作视图控制器。我在那里得到了区别。这是额外设置为非工作视图控制器的两个属性。 customModule="MyApplication" customModuleProvider="target"。删除后我的代码工作正常。以上是关于没有在自定义类下拉列表中显示 EDStarRating?的主要内容,如果未能解决你的问题,请参考以下文章
在自定义类下拉菜单 Xcode 8.3.2 中找不到自定义控制器类
listview 项目未在自定义适配器的 getview 方法中显示分配的值