Cocoa 文本字段渲染

Cocoa 文本字段渲染,cocoa,xcode,macos,interface-builder,xcode4,Cocoa,Xcode,Macos,Interface Builder,Xcode4,我试图用Interface Builder(XCode 4)构建一个非常简单的NSTextField,但是默认值的呈现非常奇怪: 我唯一更改的设置是边框样式: 我的问题: 如何显示整洁的文本字段“正方形,但有圆角”,如Safari中所示: 如何删除切割焦点的“溢出:隐藏”(对不起CSS描述)界面生成器错误,已修复 我应该设计自己的基于图像的组件吗 谢谢大家! 顶部是一个用于过滤/搜索的NSSearchField 聚焦环被切断的原因很可能是因为你把它放在一个盒子里或者与另一个物体重叠。不要那

我试图用Interface Builder(XCode 4)构建一个非常简单的
NSTextField
,但是默认值的呈现非常奇怪:

我唯一更改的设置是边框样式:

我的问题:

如何显示整洁的文本字段“正方形,但有圆角”,如Safari中所示:

如何删除切割焦点的“溢出:隐藏”(对不起CSS描述)界面生成器错误,已修复

我应该设计自己的基于图像的组件吗


谢谢大家!

顶部是一个用于过滤/搜索的
NSSearchField

聚焦环被切断的原因很可能是因为你把它放在一个盒子里或者与另一个物体重叠。不要那样做


没有标准的圆角(相对于圆角)文本字段;如果需要,您需要自己对
NSTextField
进行子类化,或者只需等待Lion,标准文本字段将具有圆角。

圆角矩形文本字段非常简单,不需要对控件进行子类化。相反,您可以简单地覆盖控件背景层的绘制方式

选择直角字段形状,将QuartzCore框架添加到项目中,然后导入。在控制器的
viewDidLoad
方法中,您将修改文本字段图层的
corneradius
属性,即la:

myTextField.layer.cornerRadius = 6.0;
噗,圆角矩形文本字段

我想我找到了你想要的东西。下面是它的样子:


它被称为SSTextField。在这里下载子类:

这是一个圆角样式的NSTextField(我编辑了我的问题)。没有重叠的对象,它直接在窗口上。谢谢“狮子拐弯”的建议!好啊那么,在这种情况下,除了搜索之外,不要使用这种样式。我没有Xcode 4,所以它可能只是IB中的一个显示工件;试着运行你的应用程序,看看聚焦环是否仍然被切断。我相信这是一个错误,因为我之前也遇到过同样的问题。更新:Lion看起来没有圆角文本字段?这是在Mac层上-支持的控件是可选的,我想它们无论如何都不会做你想做的事情。@Nicholas啊,错过了标记,我的错误。这与Cocoa Touch中的UITextField完全一样。