我正在努力在iPhone应用程序中创建RTL UI。该框架似乎没有对RTL语言的任何支持。 唯一的事情是标签内部的对齐,这很好,但它与其他控件行为冲突。
问题是: 是否有RTL TableView的工作代码?将处理公开按钮的东西放在左边,部分标题要右对齐,索引视图要左对齐?
据我所知,我无法移动tableview的索引视图,我必须覆盖一些自定义控件...
任何建议/指针/示例?
P.S。这不是这个问题的重复:Right to Left Alignment for UITableView 因为我正在寻找的是更深层次的定制,而不仅仅是一种新型的CellView。
(更新:3月10日)现在 - 我已经从indexView
删除了对tableView
的支持,我自己将单元格实现为自定义视图(左侧有披露按钮),并自定义表格的页眉/页脚。唯一剩下的就是Index View
。
答案 0 :(得分:4)
鉴于内置应用程序在将UI语言切换为希伯来语时不会翻转其布局,我认为您也不应该这样做。如果您的应用使用RTL布局而其他所有应用都使用LTR布局,则可能会非常混乱。
也许Apple有朝一日会改进他们的RTL支持。如果您坚持使用标准控件,您可能会免费获得大部分这些改进。
答案 1 :(得分:1)
我不相信有这样做的“正确”方法,但这是一个解决方案:
在视图中,创建一个UIView并向其添加UITableView。将UIView添加为“主”视图的子视图,并将其边界指定为偏离屏幕左侧,以便除“索引”之外的所有索引都被“主”视图剪切。现在,您需要做的就是在触摸子视图的索引时添加一些代码来同步这两个表。
显然,这不是最佳解决方案,但它可以起作用。
祝你好运。答案 2 :(得分:0)
我认为子类化 UITableViewCell 来获取你所追求的行为是解决这个问题的方法。这样做非常简单。
但是,我不太确定Apple在批准AppStore应用程序方面会如何反应。他们有非常严格的用户界面指南,说明表格单元格中的附件位于每个单元格的右侧......但我确信根据您的要求它们是合理的。
答案 3 :(得分:0)
我没有使用从右到左文本的经验,但您是否尝试将文本对齐设置为正确?
[cell.textLabel setTextAlignment:UITextAlignmentRight];