“在iPhone 3.5中更改了视图框架”;来自iPhone 4英寸屏幕xib的模拟器
我制作了一个viewcontroller XIB作为4英寸视网膜屏幕,并在底部放置了一个自定义视图。“在iPhone 3.5中更改了视图框架”;来自iPhone 4英寸屏幕xib的模拟器,iphone,iphone-5,viewdidload,viewwillappear,Iphone,Iphone 5,Viewdidload,Viewwillappear,我制作了一个viewcontroller XIB作为4英寸视网膜屏幕,并在底部放置了一个自定义视图。 我在iPhone4 3.5“模拟器上运行该应用程序。 大多数iPhone版本都应该支持我的应用程序,因此我在视图控制器的viewdidload上设置了视图框架。我打算在第一次隐藏视图,结果视图的帧被设置为{-320401},{320147}。 但是在ViewWillAppease中,我发现视图的帧被重置为{{0313},{320147} 我想知道为什么这个框架会自动改变 谢谢您的帮助。为什么要以
我在iPhone4 3.5“模拟器上运行该应用程序。
大多数iPhone版本都应该支持我的应用程序,因此我在视图控制器的viewdidload上设置了视图框架。我打算在第一次隐藏视图,结果视图的帧被设置为
{-320401},{320147}。
但是在ViewWillAppease中,我发现视图的帧被重置为
{{0313},{320147}
我想知道为什么这个框架会自动改变
谢谢您的帮助。为什么要以这种方式隐藏视图?为什么不使用view.hidden属性呢?是的,
view.hidden
是隐藏视图的更好方法。我将展示动画。
Try This Code
+(BOOL)isDeviceiPhone5
{
BOOL iPhone5 = FALSE;
CGRect screenBounds = [[UIScreen mainScreen] bounds];
if (screenBounds.size.height == 568) {
// code for 4-inch screen
iPhone5 = TRUE;
}
else
{
iPhone5 = FALSE;
// code for 3.5-inch screen
}
return iPhone5;
}
+(CGRect )getFrameFor_iPhone4_height:(CGRect)frame
{
frame.size.height = frame.size.height - 87.0;
return frame;
}
+(CGRect )getFrameFor_iPhone4_yPos:(CGRect)frame
{
frame.origin.y = frame.origin.y - 87.0;
return frame;
}