获取 UITextView 中的当前段落?

2024-01-06

我想检测当前段落,这是到目前为止我的代码,但效果不太好。假设我有 3 个段落,当光标位于它们之间时,它会选择下一个段落,这是不对的。有一个更好的方法吗?

通过这段代码,我想检测当前段落,然后更改该段落的字体,然后继续使用该字体书写。

func textViewDidChangeSelection(textView: UITextView)
{

   // print("selected")
    //stylesDefaults()
    var arr = [String]()

    composeTextView.text.enumerateSubstringsInRange(Range(start: composeTextView.text.startIndex, end: composeTextView.text.endIndex), options: NSStringEnumerationOptions.ByParagraphs,
        { (substring, substringRange, enclosingRange, bool) -> () in arr.append(substring!)
    })

    if(composeTextView.text.characters.count != 0)
    {
        self.titleTextField.text = arr[0]
    }

    let currentRange : NSRange = composeTextView.selectedRange
    var charCounter : Int = 0
    var found : Bool = false
    for (var i = 0; i < arr.count; i++)
    {
        charCounter = charCounter + arr[i].characters.count
        if found == false
        {
            if(charCounter > currentRange.location)
            {
                print(arr[i])
                found = true
            }
        }

    }

}

听起来你需要NSString's paragraphRangeForRange: method:

let composeText = composeTextView.text as NSString
let paragraphRange = composeText.paragraphRangeForRange(composeTextView.selectedRange)
print(composeText.substringWithRange(paragraphRange))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取 UITextView 中的当前段落? 的相关文章

随机推荐

  • 学习编程语言的工作原理

    我已经编程多年 主要是Python 但我不明白当我编译或执行代码时幕后发生了什么 本着question https stackoverflow com questions 1514812 gentle introduction to ope
  • Eclipse 调试器跳转到错误的返回语句

    我遇到了一个非常奇怪的情况 我正在 Android 2 1 平台上用 Java 通过 Eclipse Galileo 执行以下操作 Get gravity geomagnetic data to return to the caller f
  • Python:csvwriter 的问题

    我正在尝试将数据 主要是日期 布尔值和浮点数据类型 写入 CSV 文件格式 这是我的代码片段 Write data to file with open OUTPUT DIR output filename w as outputfile w
  • 合并提交第一和第二父母

    在涉及相对提交引用的 Udacity 课程中 它说 表示父提交 表示第一个父提交 和 之间的主要区别在于提交的时间 由合并创建 合并提交有两个父项 通过合并 commit 时 引用用于指示该文件的第一个父级 提交 而 2 表示第二个父级 第
  • NSPropertyListSerialization propertyListWithData 产生不兼容的转换警告/错误

    我正在尝试使用以下代码从 plist 中读取数据 NSString error NSData tempData NSData alloc initWithContentsOfFile Data plist NSDictionary temp
  • 如何通过维基百科 API 获取特定部分的文本

    我只想从维基百科页面中提取特定部分 例子 我想从维基百科文章 House 的 Parts 部分中提取文本 https en wikipedia org wiki House https en wikipedia org wiki House
  • 为什么 Javadoc 会生成不兼容的 XHTML?

    我刚刚将一些生成的 javadoc 粘贴到 eclipse 项目中 发现没有一个 HTML 是兼容的 甚至存在关闭从未打开过的标签的情况 有什么方法可以解决这个问题吗 也许是 遵守 选项 经过一番谷歌搜索后 我发现XHTML Doclet
  • Apache Spark 2.2 支持用户定义类型(UDT)吗?

    从这张 JIRA 票证中Spark 2 0 中隐藏 UserDefinedType https issues apache org jira browse SPARK 14155 似乎spark从2 0版本开始隐藏了UDT API 2 2
  • 如何制作具有三个角和阴影的图像视图

    如何制作这样一个只有三个角的图像 我尝试使用框架布局插入图像视图并使其成为原始图像的资源 添加另一个具有 3 个角的边框 src 的图像视图 但它不起作用 随着材料组件库 https github com material componen
  • Paypal 预付款和 PayFlow 与定期付款链接

    我们想在我们的应用程序中实现 Paypal 这就是我们需要的 经常性付款 试用期 优惠券代码 无需离开我们的页面即可付款 我们发现我们可以使用 Paypal Advanced Payment 和 PayFlow Link Gateway D
  • 获取对象可能为“null”。在 Angular 模板文件中

    在我的 Angular 应用程序中 我收到以下错误 对象可能为 空 问题是我收到此错误不是因为某些打字稿代码 而是因为这个 html 模板
  • HttpClient.PostAsync 第一次很慢

    经过一些基准测试后 我意识到每次启动应用程序时 第一个请求都会比下一个请求花费更多的时间 第一个平均为 500 毫秒 接下来的平均为 120 毫秒 我在 HttpClient 中设置了 cookie 并将 UseProxy 设置为 fals
  • 如何仅使用正则表达式验证 YouTube 嵌入链接

    我在我的网站中使用 YouTube 嵌入链接 我想验证该链接 就像用户粘贴嵌入链接以外的其他内容一样 那么它应该向我发出无效 URL 的警报 我已经使用了很多正则表达式 其中一些已经在我的代码中进行了评论 我只想要 YouTube 嵌入链接
  • ActiveMQ 获取入队/出队计数

    在DEBUG模式下 有一个ActiveMQ日志为 09 44 10 666 ActiveMQ Task 1 DEBUG org apache activemq broker region Queue 1687 queue demo toPa
  • 如何导航到 .java 文件而不是在类路径中指定源路径的 .class 文件?

    我在项目的 libs 文件夹下有一个预构建的 jar 以加快构建时间 但是 我想在导航到其包含的类之一时浏览该库的源代码 因此将以下行添加到 classpath 中
  • Spring Servicemix 骆驼中的 Sql 连接

    Spring Servicemix 骆驼中的 Sql 连接
  • 删除列中项目的百分比

    我正在尝试删除存在超过 90 NA 值的列 我已遵循以下操作 但我只得到一个值作为回报 不确定我可能做错了什么 我期待一个实际的数据框 我尝试将 as data frame 放在前面 但这也是错误的 领英帖子 删除缺失超过 x 的列 行 h
  • 未捕获 Google 地图信息窗口中的点击事件

    使用 Google Map v2 我希望能够在单击 GMarker 信息窗口中的文本时触发功能 foo click myFunction marker openInfoWindowHtml span class myText span 不起
  • 字符串匹配技术

    以下字符串被视为相等 我怎样才能匹配这样的东西 Hazard Const Company hazard construction company PETERSON CHASE GENERAL ENGINEERING CONSTRUCTION
  • 获取 UITextView 中的当前段落?

    我想检测当前段落 这是到目前为止我的代码 但效果不太好 假设我有 3 个段落 当光标位于它们之间时 它会选择下一个段落 这是不对的 有一个更好的方法吗 通过这段代码 我想检测当前段落 然后更改该段落的字体 然后继续使用该字体书写 func