UISearchBar在UISearchDisplayController中取消按钮更改单词'cancel'的语言

时间:2012-08-20 03:22:04

标签: ios uisearchbar

在iOS5.0中使用arc的

我需要将UISearchDisplayController的取消按钮中的“取消”一词更改为从用户选择的语言派生的单词。由于语言不是基于本地化选择的,所以我不能只使用它。这个词来自网络服务。我通过在下面的帖子中查看子视图找到了一种方法,但是在没有假设苹果的视图层次结构的情况下,还有其他方法吗?

How can I change strings of "Cancel" button, "No Results" label in UISearchBar of UISearchDisplayController?

3 个答案:

答案 0 :(得分:4)

如果您想根据iOS系统中的不同语言本地化“取消”按钮的标题。您可以更改CFBundleDevelopmentRegion中的Info.plist键。

<key>CFBundleDevelopmentRegion</key>
<string>en,ru,zh_CN</string> 

或者您可以使用Xcode Editor在Info.plist文件中选择它们。

enter image description here

以下是来自Apple Doc。

Language ID

答案 1 :(得分:1)

您似乎可以使用UIAppearance协议来实现此目的:

[[UIButton appearanceWhenContainedIn:[UISearchBar class], nil]
     setTitle:@"Hello world" forState:UIControlStateNormal];

我只使用Apple的“TableSearch”示例项目进行了快速检查,该项目有效。

答案 2 :(得分:0)

试试这个

[[UIButton appearanceWhenContainedIn:[UISearchBar class], nil] 
                                     setTitle:@"button title" 
                                     forState:UIControlStateNormal];

如果您想更改提示文字

[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] 
                                        setPlaceholder:@"text hint"];