我创建了UIScrollView
,在其中添加了其他数据,将子视图添加到self.view
。问题是,当我将手机从肖像切换到风景或反之时,它不会更新高度,因此我的scrollview
无法正常工作。这是代码:
UIScrollView *menuScroll = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 44+28+8, 130, self.view.frame.size.height)];
答案 0 :(得分:0)
覆盖ViewController上的 didRotateFromInterfaceOrientation 方法,并更改 scrollView 的框架。
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
[super didRotateFromInterfaceOrientation:fromInterfaceOrientation];
self.menuScrollView.frame=CGRectMake(0,yPosition,width,self.view.frame.size.height);
}
答案 1 :(得分:0)
滚动视图不会改变其大小,因为您根本没有设置任何约束。
有两种方法可以做到这一点。第一个也是非常简单的,就是在Interface Builder中创建滚动视图及其子视图,并在那里设置所有必要的约束。第二种更难的方法是以编程方式设置它们,但是如果你对这样做感到不舒服,那么你应该坚持使用第一个选项,并在你的故事板(或nib文件)中完成所有工作。
就个人而言,我是第一种方式,我会创建IBOutlet属性,所以我稍后在代码中以编程方式设置子视图的任何其他属性。