【问题标题】:UIView for iphone5 and iphone4iphone 5 和 iphone 4 的 UIView
【发布时间】:2013-04-18 11:20:50
【问题描述】:

我创建了一个UIView,有两个xibs 来支持iphone5 和iphone4。视图宽度为 (iphone5 - 470) 和 (iphone5 - 400)。我已经通过检查 iphone5 或 iphone4 的条件初始化了这个视图。但是在运行应用程序时,它似乎占用了iphone5。

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];
}

【问题讨论】:

标签: iphone objective-c uiview


【解决方案1】:

问题出在这一行:

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

不,您只是在检查 size.height 是否不是 0

改成类似:

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

不应该这样做。只制作一个视图并让它随着屏幕大小而增长是一个更好的选择。以防 Apple 决定添加其他屏幕尺寸,您无需更改代码中的任何内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多