簡體   English   中英

如何在ios6中設置iphone 4和iphone 5的幀

[英]How to set the frame for iphone 4 and iphone 5 in ios6

我想將我的應用程序更新到ios 6.那么如何設置iphone 4和iphone 5的框架尺寸?

我可以使用“計算屏幕大小”來調整視圖的高度,就像使用以下方法一樣

+(CGFloat)heightOf:(CGFloat)heightValue{
CGRect applicationFrame = [[UIScreen mainScreen] applicationFrame];

//NSLog(@"applciation Frame height = %f",applicationFrame.size.height);
CGFloat heightRatio = (heightValue/480)*100;

CGFloat height = (applicationFrame.size.height * heightRatio)/100;
return height;

}

然后我就像使用一樣

UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0,[Height heightOf:385], 320, 220)];

所以。 謝謝你的回復

處理這種情況的方法不止一種。

1>其中一個是正確使用自動調整大小。

2>另一種方法是使用新的自動布局功能,但是再次只支持iOS 6。

3>您可以為iphone 4和iphone 5的每個視圖創建單獨的筆尖,並根據它運行的設備,您可以切換使用過的.xib文件。

現在最好的方法是使用,正確自動調整大小。

更多信息,您可以瀏覽這些內容

1> 支持iOS 4.3到iOS 6.0

2> 支持iPhone4和iPhone5的屏幕分辨率的最佳方法是什么? - 僅在iOS6中自動布局

以下代碼檢查iPhone 5和其他設備

#define IS_IPHONE ( [[[UIDevice currentDevice] model] isEqualToString:@"iPhone"] )
#define IS_IPOD   ( [[[UIDevice currentDevice ] model] isEqualToString:@"iPod touch"] )
#define IS_HEIGHT_GTE_568 [[UIScreen mainScreen ] bounds].size.height >= 568.0f
#define IS_IPHONE_5 ( IS_IPHONE && IS_HEIGHT_GTE_568 )

並查看更多細節參考問題。

您可以檢查設備類型鏈接,或者您可以檢查iPhone 4 / 4s中的視圖框架是否大於正常視圖框架然后調整框架大小

注意:我使用第二種方式,這是工作

AutoLayout對我來說效果不佳。 我的應用程序有幾個元素需要均勻分布。

快速修復解決方案(不是很好的做法)是在屏幕高度檢查時單獨分配坐標。 (順便說一句,這是一個很好的教程。羞恥蘋果仍然沒有為IOS提供任何實質性的東西)。

如果您的屏幕上有多個元素,那么我相信您必須單獨重新放置它們

CGFloat height = [UIscreen mainScreen].bounds.size.height;
if(height==568.00){
self.imageName.frame = CGRectMake(x,y,width,height);
...
}

對於出現在窗口中心的模態或浮動屏幕,您可以嘗試這樣做:

self.imgBadgeArea.frame = CGRectMake(self.view.bounds.size.width/2- self.imgBadgeArea.bounds.size.width/2, self.view.bounds.size.height/2 - self.imgBadgeArea.bounds.size.height/2, self.imgBadgeArea.bounds.size.width, self.imgBadgeArea.bounds.size.height);

適用於3.5英寸和4英寸。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM