我有一个滚动视图,其中有两个不同的子视图,用于两个不同的方向
在portait模式下,它显示一个表视图,在portait中显示UIImageView
我想知道处理方向的理想方式
我对目前的处理方式感到不满
1.加载视图,并将scrollview作为子视图添加到根视图中
2.改变方向,
3.更改滚动视图的框架和内容
4.再次将此修改后的scrollview添加为子视图。
但是,每次我更改方向时,新视图都会添加到上一个视图之上。
答案 0 :(得分:0)
如果要为不同的方向设置两个不同的视图,则需要在方向改变时切换它们。
当你从纵向移动到横向时,你必须删除UIImageView并添加scrollview(反之亦然)
[myImageView removeFromSuperview];
[self.view addSubview:scrollView];
您还可以检查视图是否没有超级视图,以确保您必须添加它:
if(scrollView.superview == nil)
[self.view addSubview:scrollView];
答案 1 :(得分:0)
由于您已经将scrollView添加为subView,因此您无需再次将其添加为subView。 只需更改scrollView的frame和contentSize即可。
for Views do as
[scrollView.subView removeFromSuperView]
[scrollView addSubView:view1]; // or add view2