更新:为清楚起见进行了编辑。
这不是热门话题,但很烦人,我想弄清楚该怎么解决。
我有一个自定义的UIView。确切地说,是一个UIScrollView,它在运行时以编程方式填充了一堆UIView。这并不意味着要在Interface Builder(IB)中嵌入任何内容。
任何UIView都会发生什么,就是当您将另一个元素拖到该UIView上时,该UIView将变为“可放置”,并允许将另一个元素拖放到其中。
Apple的一些本地元素不允许您将东西放入其中,例如UIPickerView。
是否有一个标志或我可以设置的标志,以便不允许IB向其添加任何内容?
就像我说的那样,不是露骨的。如果添加了东西,则它们会在程序化填充发生之前被销毁,但是似乎很“整洁”,以表明它不是“可丢弃的”。
更新:在下面的屏幕截图中,“登录选择器视图”是标准的UIPickerView,“显示结果滚动器视图”是我的自定义滚动器。如果我将某些东西从“库”中拖出,然后尝试将其拖放到“选择器视图”中,则不会发生任何事情。但是,我可以将其放入“显示结果视图”中。
我想要的是能够将“显示结果视图”声明为“禁飞区”,因此它不再是可投放的。
我希望这很清楚。
无法放到PickerView中
可以在我的自定义视图上显示
答案 0 :(得分:1)
我并不是说这是一个很好的解决方案,但是如果您使用的是故事板(而不是xib),那么它似乎可以工作……
UIScrollView
。IB不允许您将任何子视图添加到容器视图。
请注意,IB也没有在“属性”检查器中向您显示任何UIScrollView
特定的属性,因此,如果您需要自定义此时髦的滚动视图,则必须以编程方式进行。
该库未在xib中提供容器视图,因此没有情节提要。