iPhone开发 - 我想要一个由许多子视图组成的自定义UIView。我应该在什么方法中添加子视图?

时间:2011-07-15 17:38:05

标签: iphone objective-c uiview initialization

基本上我想要一个自定义的UIView,里面有一堆按钮。我应该只将按钮添加到initWithFrame中的视图吗?我还想同时在视图中设置所有位置。是否有习惯性的地方可以做到这一切?我猜我不应该在drawRect中做任何事情,因为我没有制作任何自定义图纸,只是添加按钮作为子视图。感谢。

2 个答案:

答案 0 :(得分:1)

initWithFrame:是添加按钮的好地方。

如果按钮的框架取决于父视图的大小,则应在父视图的frame方法中设置按钮的layoutSubviews。否则,您只需在添加按钮时指定按钮“autoresizingMask

答案 1 :(得分:0)

您无法“同时”设置所有位置,但如果按顺序拨打多个addSubview:,您甚至看不到一次添加一个位置。 您并不总是需要子类UIView(如果它不是特别复杂),您可以在运行时创建它,使用initWithFrame:添加所需的组件并显示它;否则你可以继承UIView只是为了创建布局(圆角边框,渐变颜色等),从你的类初始化它并添加组件。如果您遇到问题,请向我们展示有关您问题的更多详细信息。