【问题标题】:How to make a UITextview and a UIImageView scrollable如何使 UITextview 和 UIImageView 可滚动
【发布时间】:2012-04-04 16:27:59
【问题描述】:

我在 UIScrollView 中放置了一个 UIImageView 和一个 UITextView。结果是当我滚动时,文本滚动但图像保持在同一个位置。

是否可以让 UIImageView 和 UITextView 整体滚动?这可以使用情节提要完成吗?

【问题讨论】:

    标签: objective-c uiscrollview ios5


    【解决方案1】:

    你只滚动文本的原因是 UITextView 有自己的 UIScrollView 而你只滚动 UITextViews 内部滚动视图。


    要实现您的目标,您需要:

    • 在 UITextView 中禁用滚动
    • 使 UITextView 足够大以覆盖所有文本
    • 使 UIScrollViews contentSize 足够大以覆盖 UIImageView 和 UITextView
    • 在 UIScrollView 中布局 UIImageView 和 UITextView

    在 UITextView 中禁用滚动

    在你的 textview 上将 scrollingEnabled 设置为 false,这可以直接在故事板中完成。

    调整 UITextView 的大小

    文本视图可以覆盖任何长度的文本,并且在不知道正在设置什么文本的情况下,您无法设置正确的大小。即,在 UITextView 中设置文本时,您需要在代码中设置大小。

    调整内容大小

    见上文(如果你不知道 UITextView 的高度,你就无法知道内容的大小)。

    在 UIScrollView 中布局 UIImageView 和 UITextView

    但是,您可以在情节提要中布局 UIImageView 和 UITextView,并且仅在设置文本时更改文本视图的 bounds 和滚动视图的 contentSize


    查看层次结构

    下图显示了完成后视图层次结构的外观。 scrollView 的框架是蓝色。它的 content红色 并且比框架大。 图像视图(黄色)文本视图(绿色)位于其中。

    【讨论】:

    • 完成了,现在没有滚动,似乎还没有了解 uiscrollview 的工作原理
    • 我已经用视图层次结构的解释更新了我的答案。希望它可以帮助您了解 UIScrollView 的工作原理
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 1970-01-01
    • 1970-01-01
    • 2013-01-29
    • 2017-10-09
    • 2017-04-23
    • 1970-01-01
    相关资源
    最近更新 更多