RTL 图像不会在 UITableViewCell 中翻转
RTL images are not flipped inside UITableViewCell
我有一个应用需要支持从右到左的语言。系统几乎自动处理所有事情。图片除外。
其中一些(箭头)需要翻转。在资产目录中,我将这些图像的 'Direction' 属性 设置为 'Left To Right, Mirrors'。
这适用于用于按钮(简单按钮和导航栏按钮)的图像,但当涉及到在 table 视图单元内的图像视图中使用的图像时,就会出现问题。
显示table时,不翻转。当我点击一个单元格并选择它时,图像会翻转并在之后保持翻转状态。所以,我需要点击每个单元格来翻转它们的图像。
我试过使用imageFlippedForRightToLeftLayoutDirection()
,但没有效果。与 withHorizontallyFlippedOrientation()
.
相同
您知道如何解决这个问题吗?
P.S。根据要求添加屏幕截图。前 3 个单元格已被点击,因此箭头按预期翻转。底部单元格显示未翻转的图像。
前 3 个单元格已被点击,因此箭头按预期翻转。底部单元格显示未翻转的图像。
好的,这是我目前找到的修复方法。
只要iOS由于某种原因无法正确镜像,我已经将'Direction'属性设置为'Both'并添加了从右到左图片集。
问题解决了。
似乎是 UIImageView
的错误,因为 - 如您所说 - 它适用于 UIButton
中的图像。诀窍是以编程方式设置图像(而不是在界面生成器中选择它)。然后 RTL 系统按预期工作:
yourImageView?.image = UIImage(named: "YourImageName")
我有一个应用需要支持从右到左的语言。系统几乎自动处理所有事情。图片除外。
其中一些(箭头)需要翻转。在资产目录中,我将这些图像的 'Direction' 属性 设置为 'Left To Right, Mirrors'。
这适用于用于按钮(简单按钮和导航栏按钮)的图像,但当涉及到在 table 视图单元内的图像视图中使用的图像时,就会出现问题。
显示table时,不翻转。当我点击一个单元格并选择它时,图像会翻转并在之后保持翻转状态。所以,我需要点击每个单元格来翻转它们的图像。
我试过使用imageFlippedForRightToLeftLayoutDirection()
,但没有效果。与 withHorizontallyFlippedOrientation()
.
您知道如何解决这个问题吗?
P.S。根据要求添加屏幕截图。前 3 个单元格已被点击,因此箭头按预期翻转。底部单元格显示未翻转的图像。
前 3 个单元格已被点击,因此箭头按预期翻转。底部单元格显示未翻转的图像。
好的,这是我目前找到的修复方法。
只要iOS由于某种原因无法正确镜像,我已经将'Direction'属性设置为'Both'并添加了从右到左图片集。
问题解决了。
似乎是 UIImageView
的错误,因为 - 如您所说 - 它适用于 UIButton
中的图像。诀窍是以编程方式设置图像(而不是在界面生成器中选择它)。然后 RTL 系统按预期工作:
yourImageView?.image = UIImage(named: "YourImageName")