UIScrollView内部的UIView未在3.5英寸屏幕iOS上调整大小

时间:2013-12-05 12:52:38

标签: ios iphone uiscrollview autolayout

我需要你的帮助/建议。

我正在使用UIScrollView(水平)来显示一些数据。在这个scrollView中有一个自定义UIView,在Interface Builder中制作。我没有使用自动布局(也许我应该......我试过,但它看起来不像我想要的,或者我不明白它是如何工作的......)。

好吧,这是我的代码,其中我的scrollView已启动:

- (void)loadList
{
    for (int i = 0; i < [DBManager getSharedInstance].getCountItems; i++) {

        Item *item = [[DBManager getSharedInstance] getCachedItemAtIndex:i];

        PanelPage *page = [[PanelPage alloc] initWithItem:item];

        CGRect frame;
        frame.origin.x = self.scrollView.frame.size.width * i;
        frame.origin.y = 0;
        frame.size = self.scrollView.frame.size;

        page.view.frame = frame;

        [self.scrollView addSubview:page.view];

    }

    self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * [DBManager getSharedInstance].getCountItems, self.scrollView.frame.size.height);

    self.pageControl.numberOfPages = [DBManager getSharedInstance].getCountItems;
}

效果很好。 scrollView中的UIView的大小:

身高:397像素 宽度:285px

我有一个UINavigationBar(64px高度)和一个UITabBar(44px高度),适用于iOS 7

对于4英寸的屏幕,它是完美的,但在3.5英寸,我想调整我的scrollView视图,但我不知道如何继续。尝试过很多但没有好结果:/

非常感谢你的帮助。

任何建议都表示赞赏;)

修改

好吧,我现在可以在尺寸屏幕更改时调整我的滚动视图。请参阅:https://stackoverflow.com/a/15401903/2061450

现在正在搜索调整滚动视图内的视图...

1 个答案:

答案 0 :(得分:0)

您应该在viewDidAppear中调用loadList函数,而不是之前(例如在viewDidLoad中)。