【问题标题】:UITextView interferes scrolling of UIScrollViewUITextView 干扰 UIScrollView 的滚动
【发布时间】:2013-07-17 02:59:15
【问题描述】:

我现在遇到的问题是UIScrollView中有一个UITextView组件,而UITextView组件会干扰UIScrollView的滚动,即当用户的手指在UITextView上滚动时整个UIScrollView,屏幕不会滚动。 UITextView 中的内容是动态的,即UITextView 组件的大小是动态的。最坏的情况是整个屏幕被UITextView 占据,用户根本无法滚动屏幕。

UITextView 已禁用编辑。我选择UITextView 而不是UILabel,因为我想在提供的文本中检测电话号码和链接,并在用户单击电话号码或链接时利用内置功能调用拨号器和浏览器。

任何关于我如何解决这个问题的建议或任何关于为什么会发生这种情况的线索都非常感谢!谢谢。

【问题讨论】:

  • 请包含一些代码,以便我们调试或查看发生了什么,也许请提供模拟器的图片

标签: iphone uiscrollview uitextview


【解决方案1】:

UITextView 继承自 UIScroll 视图,因此它有一个属性 scrollEnabled。就假装吧!

【讨论】:

    【解决方案2】:

    如果您使用的是故事板或 nib 文件,请选择您的 UITextView 并取消选中 Interface Builder 中的 Scrolling Enabled。

    否则,请执行以下操作:

    textView.scrollEnabled = NO;
    

    【讨论】:

    • 感谢您的回答和屏幕截图。 :) 对不起,我只能接受一个答案,我把它给了 Matlecu,因为她/他回答了第一个。
    • @toppest 没问题 :)
    【解决方案3】:

    除了属性scrollEnabled,您还拥有属性userInterationEnabled,它禁用(如果您将其设置为FALSE/NO)视图上的任何触摸事件(当然包括滚动)。希望它有所帮助,特别是对于其他情况,因为在您的情况下,它与禁用滚动具有相同的效果。

    【讨论】:

    • 谢谢。禁用 scrollEnabled 对于我的目的来说已经足够了。出于我的目的,我不能将 userInteractionEnabled 设置为 false,因为我想利用 TextView 的内置功能来拨打号码或打开链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-05
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 2011-08-23
    • 2013-11-27
    相关资源
    最近更新 更多