如何删除编辑完成时选择的NSTextField指示符

时间:2016-08-12 06:46:58

标签: swift macos cocoa nstextfield

当选择了可编辑的NSTextField时,Cocoa将文本字段周围的蓝色矩形标记为默认值。

但是当编辑结束时,除非选择了另一个文本字段,否则无法删除指标。

要删除选择指标我们应该做什么?

我们正在使用以下功能来检测编辑结束。

 override func controlTextDidEndEditing(notification: NSNotification) {

   // doing things like getting the string user has been made.

   }

3 个答案:

答案 0 :(得分:3)

默认情况下,

add_filter( 'genesis_seo_title', 'filter_genesis_seo_site_title', 10, 2 ); function filter_genesis_seo_site_title( $title, $inside ){ $child_inside = sprintf( '<a href="%s"><img src="'. get_stylesheet_directory_uri() .'/images/header.jpg" alt="%s"/></a>', trailingslashit( home_url() ), esc_attr( get_bloginfo( 'name' ) ), esc_attr( get_bloginfo( 'name' ) ), esc_attr( get_bloginfo( 'name' ) ) ); $title = str_replace( $inside, $child_inside, $title ); return $title; } 会将Focus Ring设置为显示活动状态。如果要删除它,可以将t设置为none。

NSTextField

注意 override func controlTextDidEndEditing(_ obj: Notification) { textField.focusRingType = .none } 仍然是第一个响应者,如果用户再次开始输入,则对焦环不会变为蓝色。这是因为你以编程方式改变了它。为了得到它,你需要自己做。

答案 1 :(得分:1)

试试这个

textField.window?.makeFirstResponder(self)

答案 2 :(得分:1)

在您的Xcode上,选择您的文字字段 - &gt;聚焦环 - &gt;从默认更改为无。 enter image description here