从Connections Inspector中隐藏自定义视图的插座

时间:2015-08-21 14:40:49

标签: ios objective-c iphone swift iboutlet

我在 Swift 中创建了一个带有nib文件的自定义视图(数量视图)。我创建了一些IBOutlets&我的自定义视图中的IBActions(用于按钮,标签等)。

我尝试通过将类名分配到 storyboard 中的UIView来使用此自定义视图(数量视图)。 它向我展示了所有IBOutlets& Connections Inspector 中的IBActions,如此屏幕截图所示:screenshot

我只想为自定义视图显示delegate

可能答案:

我以为我可以使用-viewWithTag来获取视图而不是Outlets。

但是,我想知道是否可以使用 Outlets ,或者是否有更好的方法可以做到这一点?

处理这种情况的其他可能方式(最佳)是什么?

2 个答案:

答案 0 :(得分:2)

您还可以考虑以下解决方案: 您可以获取QuantityViews的子视图(自定义视图),并且可以通过其帧原点识别特定视图。 注意:您应该知道customview子视图框架

答案 1 :(得分:1)

如果您将班级成员声明为IB(IBOutlets或IBActions),则无法隐藏故事板中的IBOutlets。

IBOutlets或IBActions只是接口构建器的指示器,因此当您尝试绑定它时,它可以在其上显示名称,它实际上调用setValue:forKey:方法来设置视图对IBOutlet属性的引用。 / p>

现在,如果您尝试从文件的所有者类访问子视图而没有任何IBoutlet,则需要指向它的指针,因此您可以使用ObjectID获取引用,ObjectID由接口构建器分配给子视图或者你可以使用viewWithTag:方法获得它。

从视图中添加或替换子视图时,您需要始终查找的ObjectID,因此更方便的方法是使用UIView类的tag属性。

所以我对这个问题的结论是使用前面提到的viewWithTag方法访问视图。