2013-04-18 42 views
0

我創建了一個UIView,其中兩個xibs支持iphone5和iphone4。視圖寬度是(iphone5 - 470)和(iphone5 - 400)。我已經初始化了這個視圖,檢查了iphone5或iphone4的條件。但在運行該應用程序時,似乎需要iphone5。UIView for iphone5和iphone4

CategoryView *puzzleView = [[CategoryView alloc] initWithFrame:CGRectMake(0, startY, levelScrollView.frame.size.width, 190)]; 
BOOL isiPhone = IS_IPHONE5([[UIScreen mainScreen] bounds].size.height); 
if (isiPhone) 
{ 
    puzzleView = [[[NSBundle mainBundle] loadNibNamed: @"CategoryView5" owner:self options:nil] objectAtIndex:0]; 
} 
else 
{ 
    puzzleView = [[[NSBundle mainBundle] loadNibNamed: @"CategoryView-iphone" owner:self options:nil] objectAtIndex:0]; 
} 
+0

請點擊這裏查詢代碼: - http://stackoverflow.com/questions/13630851/iphone-5-compatible-issue/15894492#15894492 –

回答

1

的probles在於這一行:

BOOL isiPhone = IS_IPHONE5([[UIScreen mainScreen] bounds].size.height); 

不,你只是檢查羯羊的size.height0

變成類似:

BOOL isiPhone = IS_IPHONE5([[UIScreen mainScreen] bounds].size.height > 480.f); 

布特一個不應該這樣做。只是製作一個視圖,讓它隨着屏幕尺寸的增長而成長是一個更好的選擇。只要蘋果決定添加其他屏幕尺寸,您就不需要更改代碼中的任何內容。