【问题标题】:Why is the initial size of UIScrollView still 320 on iPad?为什么 iPad 上 UIScrollView 的初始大小还是 320?
【发布时间】:2011-07-16 00:13:18
【问题描述】:

我们有一个目前专为 iPhone 设计的 xib。我们正在将应用程序移植到 iPad。

我们正在使用 UIScrollView 的分页部分。我们为宽度和高度设置了自动调整大小的蒙版。在 iPad 的初始加载时,框架宽度为 320,这当然会使 UI 看起来很糟糕。

对我们来说奇怪的是,如果您旋转设备,它会根据 iPad 屏幕宽度“拾取”新尺寸。从那时起,它就是正确的。

我们需要初始化框架宽度吗?

【问题讨论】:

    标签: iphone uiscrollview


    【解决方案1】:

    您在创建 XIB 时是否选中了“以 iPad 为目标”的复选框?

    如果没有,您必须手动编辑 Xib(或重新创建)

    同一控制器需要两个不同的 XIB。像这样实例化它们。

    MyScrollViewController *controller;
    if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
    {
        // iphone related code
        controller = [[MyScrollViewController alloc] initWithNibName:@"MyScrollViewController"
                                                                                              bundle:nil];
    }   
    else 
    {
        // ipad related code
        controller = [[MyScrollViewController alloc] initWithNibName:@"MyScrollViewController_iPad"
                                                                                              bundle:nil];
    }   
    [self presentModalViewController:controller animated:NO];
    [controller release];
    

    【讨论】:

    • 那么如果我这样做会破坏 iPhone 的布局吗?
    • 您需要两种不同的 XIB - 一种用于 iPhone,一种用于 iPad。当你创建它们时,你会为同一个控制器初始化不同的 XIB。
    猜你喜欢
    • 1970-01-01
    • 2018-12-26
    • 2013-12-16
    • 2019-03-21
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多