我想知道如何改变NSSearchField的外观,我很确定它会意味着对NSSearchField进行子类化,但是我不知道该怎么做就是编写代码来使它成为我想要的方式看。下面你可以看到我希望它看起来的样子以及它当前的样子。
alt text http://snapplr.com/snap/3f1r
如何使用代码使其看起来像这样(在左侧)? 我希望添加浮雕并减少内部阴影。
答案 0 :(得分:3)
您需要创建自定义NSSearchFieldCell子类,并覆盖drawWithFrame:,然后将NSSearchField设置为使用该单元格。您可以在代码中绘制自定义边框,也可以使用端盖图像和水平平铺中心的背景图像。
这是an example旧代码,它使用后一种方法在NSSearchField是标准控件之前制作一个看起来像搜索字段的自定义NSTextField。
答案 1 :(得分:0)
老实说,左边的那个场看起来对我来说是双重打击。因此,您可以尝试覆盖drawRect:
两次发送[super drawRect:]
。 ☺
(真正的考验是如果你可以显示两个带有文字的字段。双击文字很容易被发现,绝对不是你想要的。)
答案 2 :(得分:-1)
如果您只想增加NSSearchField
的大小,则不需要对其进行子类化,只需以编程方式创建搜索字段,并在initWithFrame
期间提供所需的大小。
下面给出一个例子:
mySearchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0,44,320,70)];
mySearchBar.autocorrectionType = UITextAutocorrectionTypeNo;
mySearchBar.autocapitalizationType = UITextAutocapitalizationTypeNone;
mySearchBar.showsCancelButton = NO;
mySearchBar.delegate=self;
[self.view addSubview:mySearchBar];
或者,如果您想要不同的外观,请指定它;我可以帮到你。