如何创建带有希伯来语文本的 UIButton?
Posted
技术标签:
【中文标题】如何创建带有希伯来语文本的 UIButton?【英文标题】:How can create a UIButton with Hebrew language text? 【发布时间】:2013-12-03 19:04:42 【问题描述】:问题: 我在按钮中设置的文本(希伯来语)显示相反。
例如:
NSString *title = @"עמוד הבית"; //This is right-to-left
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setTitle:title forState:UIControlStateNormal];
所以: 在我的模拟器中,我看到:
//This is left-to-right
如何解决?
如何正确显示文字?
应用支持 iOS 6 和 iOS 7
【问题讨论】:
什么意思?不是那是相关的。看起来与您向后输入的内容相同。 它被颠倒了,因为希伯来语是一种从右到左的语言。您应该使用本地化的 .strings 文件。 我可能错了,但我认为从右到左的语言不会“镜像”每个字符(如模拟器输出所示)。 - 你确定转换矩阵没有在某处修改吗?拉丁字符是否正确显示? @Vit:请发布您的解决方案(作为答案)。 对不起我的大错误;我将此按钮放在 Scroller 中,但在完成之前 _scrollView.transform = CGAffineTransformMakeScale(-1, 1); 【参考方案1】:使用 UIButton 时对我有用的是:
if ([UIView userInterfaceLayoutDirectionForSemanticContentAttribute:button.semanticContentAttribute] == UIUserInterfaceLayoutDirectionRightToLeft)
button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentRight;
值得阅读的链接:
Supporting Right-to-Left Languages (Apple Reference)
AutoLayout + RTL + UILabel text alignment
【讨论】:
【参考方案2】:如果您使用“#x200F”来解决您的问题,请将其添加为附加字符串。有一个问题是添加后会附带所有内容,这很奇怪,如果您知道答案。请分享
【讨论】:
这是从右到左的标记 (RLM):en.wikipedia.org/wiki/Right-to-left_mark以上是关于如何创建带有希伯来语文本的 UIButton?的主要内容,如果未能解决你的问题,请参考以下文章
使用自动布局创建带有文本和图像的 iOS 7 UIButton
如何在 Xcode 4 中正确创建调整为文本长度的 UIButton?
Closed:: 创建一个带有滑动和点击手势的 UIButton 水平轮播