【问题标题】:UITextView text manipulationUITextView 文本操作
【发布时间】:2012-07-31 21:11:09
【问题描述】:

我正在开发这个应用程序,我在屏幕上有一个 UITextView,其中包含如下文本:

      1
     121
    12321
   1234321
  123454321
 12345654321
1234567654321

除了这个 UITextView,我还有 7 个 UIbuttons 1、2、3、4、5、6、7。当点击相应的 UIbutton 时,我想在 UITextview bold 中制作单个数字。例如,按下 UIButton 1 将使所有 1 变为粗体。

我只是想知道是否有任何 NSString 关联方法或 UITextView 方法允许我解析它的内容以获取可以让我实现我的问题的特定字符。

【问题讨论】:

    标签: iphone ios nsstring uibutton uitextview


    【解决方案1】:

    有许多 NSString 方法可以帮助解析字符串中的项目:

    – rangeOfCharacterFromSet:
    – rangeOfCharacterFromSet:options:
    – rangeOfCharacterFromSet:options:range:
    – rangeOfString:
    – rangeOfString:options:
    – rangeOfString:options:range:
    – rangeOfString:options:range:locale:
    – enumerateLinesUsingBlock:
    – enumerateSubstringsInRange:options:usingBlock:
    

    用粗体显示一个字符的字符串并不容易。您可能必须使用 CoreText 例程才能到达那里。观看有关使用 CoreText 的 WWDC 会议可能对您有好处

    【讨论】:

    • OP 可以使用UIWebView。如果视图不需要用户可编辑,则可以使用它来显示样式文本,而无需诉诸 CoreText 并且代码更少。
    • 是的。如果用户可以为此使用 Web 视图,并且对此感到满意。如果他愿意手动将非粗体从粗体文本中分离出来并为它们发出单独的绘图命令,并自己处理间距,他或许也可以使用 Quartz 文本例程。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-06
    • 2015-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多