【问题标题】:How to add a scroll view to the existing view controller?如何向现有视图控制器添加滚动视图?
【发布时间】:2014-12-18 15:03:36
【问题描述】:

我在我的控制器中添加了很多 ui 元素,并且我还在实现代码中完成了 Web 服务部分。我的默认屏幕尺寸视图控制器似乎不足以让我显示信息。是否可以向现有控制器添加滚动视图,如果可以,请给出想法或示例,以便我可以添加更多 ui 元素。

提前致谢。

【问题讨论】:

    标签: ios uiviewcontroller uiscrollview controller scrollview


    【解决方案1】:

    试试这个让主视图变成滚动视图:

    - (void)loadView {
        // create and configure the scrollview
        UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:self.view.bounds];
        self.view = scrollView;
    }
    

    loadView是子类视图控制器应该配置它们的主视图的方法,它在VC加载之前自动调用,不应该直接调用。

    将所有元素添加到滚动视图后,您要更改内容大小,使其实际滚动如下:

    // this for a horizontal scroll
    [scrollView setContetSize:CGSizeMake(CGRectGetMaxX(lastElementOnTheRight), scrollView.frame.size.height)];
    
    // this for a vertical scroll
    [scrollView setContentSize:CGSizeMake(scrolView.frame.size, CGRectGetMaxY(lastElementOnTheBottom))];
    

    【讨论】:

    • OMGGGGG 非常感谢您,我刚刚在您的代码中找到了解决我的一个问题的方法。感谢一个loooooooooot! (哇 5 年后)祝你有美好的一天,先生。 :)
    【解决方案2】:

    选择要添加到滚动视图的视图,然后转到编辑->嵌入->滚动视图。

    【讨论】:

    • 滚动视图已禁用,更多内容位于编辑器中,但不在编辑器中。
    • 哦,是的。呵呵。为什么它被禁用了?
    【解决方案3】:

    默认情况下,您应该通过继承在视图控制器中获得滚动行为。您可能会发现此图有助于将来参考:uikit classes

    此外,您可以将滚动视图添加到视图中:

    [self.view addSubview:scrollView];
    

    【讨论】:

    • 它甚至没有滚动条,我能看到。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    相关资源
    最近更新 更多