|
|
1
14
通常,实现它的方法只是将所需的函数添加到视图的控制器中,并设置其委托。例如,如果希望在视图加载时运行代码,只需将视图委托给控制器,并实现awakefromnib函数。 因此,要在文本视图中检测按键,请确保控制器是文本视图的委托,然后实现此功能:
请注意,这是继承的nsresponder方法,而不是nstextview方法。 |
|
|
2
10
只需突出显示语法提示: 不要同时突出显示整个文本视图-它是 非常 慢。另外,不要使用-editedrange突出显示上次编辑的文本,如果用户将大量文本粘贴到文本视图中,也会非常慢。 相反,您需要突出显示如下可见文本:
然后将VisibleRange输入突出显示的代码。 |
|
|
3
2
重要的是告诉我们您真正想要实现更高层次的目标,您认为在nstextview中捕获关键事件可以解决这个问题。 例如,当有人问我如何捕获NSTExt中的关键事件时 场 他们真正想知道的是如何验证字段中的输入。这是通过将字段的格式化程序设置为nsformatter实例(无论cocoa中包含的格式化程序之一还是自定义格式化程序之一)来完成的,而不是直接处理击键。 所以举个例子,你真正想要完成的是什么? |
|
|
4
1
我已经做了一些艰苦的挖掘,我找到了我自己问题的答案。我在下面说,不过多亏了两个回答的人。我认为栈溢出已经是一个很好的站点了——我希望更多的Mac开发者在测试版结束后能找到他们的方法——这对于其他想要过渡到平台的开发者来说可能是一个很好的资源。 所以,我按照丹尼的建议,在代表团中找到了我的答案。我从丹尼的文章中没有理解的是,在委托对象中有一组启用委托的方法,并且委托必须实现所述事件。所以对于一个textview,我能够找到textdidchange方法,它以一种比简单捕获按键更好的方式完成了我想要的事情。因此,如果我在控制器中实现这一点:
我可以回复正在编辑的文本。当然,还有其他的方法,我很高兴能和他们一起玩,因为我知道我会学到很多东西。再次感谢,伙计们。 |
|
|
KanKonga · 为什么这个swift代码没有显示在文本字段中? 2 年前 |
|
|
Community wiki · 目标的Xcode构建阶段的自动更新? 2 年前 |
|
|
Anton Timonin · 如何正确地将动态pod库更改为静态? 3 年前 |
|
|
Igor · 在OSX中,捆绑包的用户首选项在哪里? 3 年前 |
|
|
narner · 从Swift包创建Cocoapods框架 3 年前 |