0

我在 UIAlertView 中有一个 UITextField。当方向改变时,我想更新 UITextField 的框架,否则它会与 UIAlertView 的按钮重叠。这些是框架:

portrait: CGRectMake(12.0, 45.0, 260.0, 26.0)
landscape: CGRectMake(12.0, 30.0, 260.0, 26.0)

在不直接使用加速度计的情况下,如何检查设备的方向是否发生了变化?

应该在-[UIViewController shouldAutorotateToInterfaceOrientation:]吗?

4

1 回答 1

2

试试这个

if([[UIDevice currentDevice] orientation]==UIInterfaceOrientationLandscapeLeft || [[UIDevice currentDevice] orientation]==UIInterfaceOrientationLandscapeRight)
{
   //Landscape Frame
}
if([[UIDevice currentDevice] orientation]==UIInterfaceOrientationPortrait)
{
   //Portrait Frame
}
于 2010-12-11T11:48:30.860 回答