【问题标题】:Swift: Scroll a UITextView horizontallySwift:水平滚动 UITextView
【发布时间】:2017-04-10 11:57:36
【问题描述】:

我想在标签上显示选定的联系人,该标签可以像在 Snapchat 中一样滚动。在经历了很多关于stackoverflow的问题后,我使用了Textview,因为它是可滚动的。

@IBOutlet weak var selectedContactsDisplay: UITextView!
selectedContactsDisplay.delegate = self
selectedContactsDisplay.backgroundColor = UIColor.appColor()     
selectedContactsDisplay.textColor = UIColor.white
selectedContactsDisplay.textContainer.maximumNumberOfLines = 1
selectedContactsDisplay.textContainer.lineBreakMode = NSLineBreakMode.byTruncatingHead

let stringOne = selectedContactName.joined(separator: ",")
selectedContactsDisplay.text = stringOne

func textViewDidBeginEditing(_ textView: UITextView) {
    textView.resignFirstResponder()
}

但是,水平滚动仍然是不可能的。有人可以帮助我如何启用滚动。

【问题讨论】:

  • 你不能在UITextView中水平滚动!
  • @Ananth 集合视图和表格视图也是可滚动的。并且是 UIScrollView 的子类。
  • 您可以做的是启用自动滚动。 stackoverflow.com/a/35018590/6203030

标签: ios swift uitextview


【解决方案1】:

你不能自己在TextView中滚动,你可以做的是启用autoScroll:

@IBOutlet weak var selectedContactsDisplay: UITextView!
selectedContactsDisplay.delegate = self
selectedContactsDisplay.backgroundColor = UIColor.appColor()     
selectedContactsDisplay.textColor = UIColor.white
selectedContactsDisplay.textContainer.maximumNumberOfLines = 1
selectedContactsDisplay.textContainer.lineBreakMode = NSLineBreakMode.byTruncatingHead


let stringOne = selectedContactName.joined(separator: ",")
selectedContactsDisplay.text = stringOne

func textViewDidBeginEditing(_ textView: UITextView) {
    textView.resignFirstResponder()
let range = NSMakeRange(selectedContactsDisplay.text.characters.count - 1, 0)
selectedContactsDisplay.scrollRangeToVisible(range)
}

【讨论】:

    【解决方案2】:

    您不能在UITextView 中水平滚动。对于解决方案,您可以使用UIScrollView,它可以水平滚动并可以在其中添加标签或文本字段,并根据您的内容增加该标签的宽度!应该设置适当的约束!

    【讨论】:

    • 非常感谢。我已经按照你建议的方式做到了。
    • 我有一个问题。现在,我如何滚动到标签文本的末尾。现在,即使我添加新数据,它也只显示文本的开头部分。
    • 您需要计算标签的宽度并将标签的框架设置为该宽度!
    猜你喜欢
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多