Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UIView子视图不是iPad的自动旋转或自动调整大小_Iphone_Cocoa Touch_Uiview_Subview - Fatal编程技术网

Iphone UIView子视图不是iPad的自动旋转或自动调整大小

Iphone UIView子视图不是iPad的自动旋转或自动调整大小,iphone,cocoa-touch,uiview,subview,Iphone,Cocoa Touch,Uiview,Subview,在我的iPhone应用程序中,我有一个UIViewController,它有两个子视图:一个主UIView(我们称之为mainView),另一个辅助UIView(我们称之为secondView),它通常是隐藏的,但有时会显示(例如用户设置)。在my UIViewController中,self.view设置为mainView。当用户切换到子视图时,我调用[self.view addSubview:secondView],当用户切换回主UIView时,我调用[secondView removeFr

在我的iPhone应用程序中,我有一个UIViewController,它有两个子视图:一个主UIView(我们称之为mainView),另一个辅助UIView(我们称之为secondView),它通常是隐藏的,但有时会显示(例如用户设置)。在my UIViewController中,self.view设置为mainView。当用户切换到子视图时,我调用
[self.view addSubview:secondView]
,当用户切换回主UIView时,我调用
[secondView removeFromSuperview]

我目前正在处理两个问题:

  • 当用户旋转iPhone或iPad时,主UIView(mainView)会正确地自动旋转,其所有UI项都遵循我在Interface Builder中设置的自动调整大小规则。但是,当显示次要UIView(secondView)且iPhone或iPad旋转时,secondView及其所有UI项均不遵循其自动调整大小规则。我发现,当我设置
    self.view=secondView
    ,然后旋转设备时,视图旋转正确
  • 特别是在iPad中,当我使用
    [self.view addSubview:secondView]
    调出secondView时,它的大小不会调整到填满整个屏幕,就像iPad版本的主UIView的大小一样。因此,我最终得到一个屏幕,它在后台显示mainView UIView,在左上角显示secondView UIView,而不占用整个屏幕

  • 我的直觉告诉我,这两个问题是相互关联的。是否有其他人在使用
    addSubview:
    将次要UIView添加到UIViewController时遇到过此类问题?

    当使用
    addSubview

    [secondView setFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
    

    不太优雅。但它对我很有效:

    当使用
    addSubview

    [secondView setFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
    

    不太优雅。但它对我起了作用:

    我也有类似的问题。我通过设置视图的内容模式解决了大小问题

    Exp:[_yourView setContentMode:UIViewContentModeScaleAspectFill];
    

    我希望这有帮助……

    我也有类似的问题。我通过设置视图的内容模式解决了大小问题

    Exp:[_yourView setContentMode:UIViewContentModeScaleAspectFill];
    

    我希望这能有所帮助……

    我在iPhone和ios6上也有类似的体验。我有一个通常隐藏的子视图,它坚持以肖像为导向,即使其他一切都是以风景为导向。就好像它从来没有费心去理解它是视图层次结构的一部分,所有视图都已旋转。我在iPhone上使用ios6也有类似的体验。我有一个通常隐藏的子视图,它坚持以肖像为导向,即使其他一切都是以风景为导向。这就好像它从来没有费心去理解它是视图层次结构的一部分,所有视图都已旋转。您应该在``之间格式化代码,或者在代码前面加上4个空格。有一个按钮可以帮助格式化代码。您应该在``之间格式化代码,或者在代码前面加4个空格。有一个按钮可以帮助格式化代码。