【发布时间】:2010-12-03 21:33:47
【问题描述】:
以编程方式添加视图时,addSubview 和 insertSubView 方法有什么区别?
【问题讨论】:
标签: iphone uiview uikit subview addsubview
以编程方式添加视图时,addSubview 和 insertSubView 方法有什么区别?
【问题讨论】:
标签: iphone uiview uikit subview addsubview
唯一的区别在于添加视图的位置:它是最前面的视图 (addSubview:),还是在第 5 个子视图之前 (insertSubview:atIndex:),或者它是否紧跟在另一个子视图之后 (@987654323 @)。
【讨论】:
使用insertSubView: 可以指定索引,该索引确定视图的z 顺序。索引较高的视图位于索引较低的视图之上。
【讨论】:
我认为没有区别。 addSubview: 是一种简单方便的方法
[view insertSubview:aView atIndex:[view.subviews count]]
【讨论】:
1.addSubview 在数组中添加子视图,然后在View'slayer中添加
- (void)addSubview:(UIView *)subview
{
[_subviews addObject:subview];
[_layer addSublayer:subview.layer];
}
}
2.虽然 insertSubview 将您的视图添加为子视图,然后调用
[_layer insertSublayer:subview.layer atIndex:index];
- (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index
{
[self addSubview:subview];
[_layer insertSublayer:subview.layer atIndex:index];
}
【讨论】: