【问题标题】:Set all new text in UITextView to bold将 UITextView 中的所有新文本设置为粗体
【发布时间】:2014-01-24 05:47:40
【问题描述】:

我有一个UITextView,它当前使用的是系统默认字体。用户按下粗体按钮后,我希望输入的所有新文本都以粗体显示,但之前的文本保持原样。我目前正在使用attributedText 属性来更改其他属性(颜色、大小等),所以我想保留之前的任何属性,而不是字体。

我尝试将textView 字体设置为粗体,但这会更改所有文本。有什么建议吗?

【问题讨论】:

  • 你需要在 NSAttributedString 的 addAttribte:value:range 方法中使用 NSRange 将不同的字体应用到文本的不同部分
  • @Puneet 但是如果范围不断变化,我该怎么做呢?
  • 您需要使范围动态化。你有 sapme 旧文本。根据其长度,您可以知道新键入文本的位置并相应地确定范围。

标签: ios objective-c attributes uitextview


【解决方案1】:

试试这个RKRichTextView。我相信这肯定会有所帮助。

【讨论】:

    【解决方案2】:

    只需在 Objc 中尝试 [textView setTypingAttributes] 或在 Swift 中尝试 textView.typingAttributes

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 2013-12-16
      • 1970-01-01
      • 2014-09-21
      • 2021-12-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多