在uisearchbar下为占位符设置UITextField
问题描述:
我想样式UISearchBar
的占位符属性。因为据我所知,这是做不到的,我发明了一个黑客,允许我这样做:我在UISearchBar
后创建一个UITextField
,并显示UITextField
的占位符。当搜索栏被修改时,我希望UISearchBar成为第一个响应者,并且也消除UITextField
中的占位符文本。在uisearchbar下为占位符设置UITextField
所以我的具体问题:如何在UISearchBar后面创建UITextField,设置占位符文本并在触摸UISearchBar时使其消失。
答
这应该是相当容易的。我会添加UITextField
与UISearchBar
相同的帧,并可能调整edgeInset
,这取决于您希望占位符文本的样子。 然后将UITapGestureRecognizer
添加到UITextField
,它在注册水龙头时隐藏了TextField并调用了UISearchBar
的-becomeFirstResponder
方法。
您可以深入研究'UISearchBar'子视图结构并找到它具有的嵌套'UITextField'。然后设置文本字段的“属性”属性。没有真正需要创建第二个文本字段。 – rmaddy 2014-09-12 23:21:13
如果你想要做的只是改变占位符的颜色,请参阅http://*.com/questions/11827585/uisearchbar-change-placeholder-colour – rmaddy 2014-09-12 23:26:59
@maddy我已经这样做了,但似乎没有办法实际更改占位符文本的对齐方式(默认=居中) – bdv 2014-09-13 13:32:52