为什么横向模式视图仍然显示宽度小于高度?

发布于 2024-09-11 02:52:48 字数 588 浏览 5 评论 0原文

试试这个,

假设你有一个简单的横向模式 iPhone 应用程序,比如一个简单的视图控制器应用程序。

还要取消 viewcontroller .m 文件中自动旋转的注释,就像这样

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
  NSLOG(@"width:%f,height:%f",self.view.frame.size.width,self.view.frame.size.height);
  return YES;
}

之后,只需在 iPhone 模拟器上运行该东西,然后尝试通过 command+left 或 command+right 旋转它。

我希望在纵向模式下得到类似 width:320.000,height:480.000 的信息,在横向模式下得到类似 width:480.000,height:320.000 的信息。

相反,我总是得到宽度:320.000,高度:480.000,无论实际方向是什么。

所以我的问题是我应该如何自动正确获取视图的大小?

try this,

say you have a simple landscape mode iphone app, like a simple viewcontroller app.

also uncomment the autorotate in viewcontroller .m file like so

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
  NSLOG(@"width:%f,height:%f",self.view.frame.size.width,self.view.frame.size.height);
  return YES;
}

after that, simply run the thing on iphone simulator, and try to rotate it by command+left or command+right.

I would expect that I get something like width:320.000,height:480.000 when in portrait and width:480.000,height:320.000 in the landscape mode.

instead, i always got width:320.000,height:480.000 what ever the actual orientation is.

so my question is what should i automatically get the view's size correctly?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夜空下最亮的亮点 2024-09-18 02:52:48

尝试获取宽度/高度:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 

{
  NSLog(@"view frame: %@",NSStringFromCGRect(self.view.frame));
}

此外,您的视图需要设置 UIAutoresizingMasks 以便在旋转时调整大小。

Try getting the width/height in:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 

{
  NSLog(@"view frame: %@",NSStringFromCGRect(self.view.frame));
}

Also your view needs to have UIAutoresizingMasks set in order to resize when rotated.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文