在 iOS5.0 中使用 arc 我需要将 UISearchDisplayController 的取消按钮中的“取消”一词更改为从用户选择的语言派生的词。由于语言不是基于本地化选择的,所以我不能只使用它。这个词来自一个网络服务。我通过走下面帖子中的子视图找到了一种方法,但是在不假设苹果的视图层次结构的情况下,有没有其他方法可以做到这一点?
如何在 UISearchDisplayController 的 UISearchBar 中更改“取消”按钮、“无结果”标签的字符串?
在 iOS5.0 中使用 arc 我需要将 UISearchDisplayController 的取消按钮中的“取消”一词更改为从用户选择的语言派生的词。由于语言不是基于本地化选择的,所以我不能只使用它。这个词来自一个网络服务。我通过走下面帖子中的子视图找到了一种方法,但是在不假设苹果的视图层次结构的情况下,有没有其他方法可以做到这一点?
如何在 UISearchDisplayController 的 UISearchBar 中更改“取消”按钮、“无结果”标签的字符串?
如果您想在 iOS 系统中根据不同语言本地化“取消”按钮的标题。您可以更改CFBundleDevelopmentRegion
.Info.plist
<key>CFBundleDevelopmentRegion</key>
<string>en,ru,zh_CN</string>
或者您可以Info.plist
使用 Xcode Editor 在文件中选择它们。
这是来自 Apple Doc的语言 ID 。
看来您可以使用UIAppearance
协议来实现这一点:
[[UIButton appearanceWhenContainedIn:[UISearchBar class], nil]
setTitle:@"Hello world" forState:UIControlStateNormal];
我只对 Apple 的“TableSearch”示例项目进行了快速检查,它在那里工作。
try this
[[UIButton appearanceWhenContainedIn:[UISearchBar class], nil]
setTitle:@"button title"
forState:UIControlStateNormal];
if you want to change hint text
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil]
setPlaceholder:@"text hint"];