UIWindow与视图UIView深层解析-链接地址 层次 Android中得到view在父容器中的位置下标 iOS | 怎么获取view在父类中的frame, 或子控件位置转换成父控件位置 addSubview和insertSubview 区别
http://blog.csdn.net/gf771115/article/details/7761904
- //得到view在父容器中的位置下标
- int index=((ViewGroup)v.getParent()).indexOfChild(v);
iOS 视图控制器转场详解
视图位置调整
[_tableView insertSubview:_bgIcon atIndex:0];
iOS | 怎么获取view在父类中的frame, 或子控件位置转换成父控件位置
addSubview和insertSubview 区别
子视图是以栈的方式存放的。
每次addsubview时都是在最后面添加。
每次在addsubview前和addsubview后可以看看[self.view.subViews count];
你看看你的子视图是被添加到哪个位置了。
另外[self.view addSubView:xx.view] 其实就等于[self.view insertSubView:xx.view atIndex:[self.view.subViews count]];
即在最顶层添加view。
总之:
addSubview是一层一层往上加,新加的只能放到最上层,
insertSubView可以控制将view添加到指定的层。
insertSubView可以控制将view添加到指定的层。
//当加入视图完成后调用 (void)didAddSubview:(UIView *)subview //当视图移动完成后调用 (void)didMoveToSuperview //当视图移动到新的WINDOW后调用 (void)didMoveToWindow //在删除视图之后调用 (void)willRemoveSubview:(UIView *)subview //当移动视图之前调用 (void)didMoveToSuperview:(UIView *)subview //当视图移动到WINDOW之前调用 (void)didMoveToWindow