微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 禁用ActionBar RTL方向

Android 4.2引入了RTL(BiDi)支持,开始使用它我只是按照说明(android:supportsRtl属性到你的清单文件中的元素,并将其设置为“true”)

但是后来我的ActionBar标志也改变了右边的方向(徽标显示在右边),我不想要.
我确实想使用RTL功能,但是将ActionBar保留在左边…

换句话说,当语言方向是RTL时,如何使用android:supportsRtl属性,而不改变Android 4.2上的ActionBar方向

有什么建议么 ?

解决方法

首先,不要抱歉,当您处于RTL模式时,ActionBar应该镜像.这一点已经由bidi / rtl专家检查和验证.设置android:supportsRtl = true表示您的应用程序愿意支持RTL布局镜像.如果你这样做,那么ActionBar(像每个Android Framework小部件)都将被镜像,因为在LTR方向上显示它是没有意义的.

其次,您关于访问左上角或右上角菜单的屏幕尺寸和人体工程学问题的争论与RTL支持无关.如果在LTR模式下有这样的问题,那么你将在RTL模式下有完全相同的问题.这只与屏幕大小有关.

第三,所有Android UI Framework小部件都是本地支持RTL镜像.如果您发现问题,请在公共bug跟踪系统上提出错误.

第四,Google Apps将支持RTL布局,并在需要时使用这些新的公共RTL API.这完全是从Android Framework支持中解除的.支持RTL的第一个应用程序是“设置”应用程序(其中一些尚未提供RTL的提供程序的模式).

第五,关于backport,我假设你在说如果这个功能应该放在支持库,或者甚至在旧的Android版本.对于较旧的Android版本,这是不可能的,因为他们的代码库被冻结.对于支持库,我们不能这样做,因为我们不得不更改View和其他基本部件组件.

最后,如果您认为您发现了问题或仅向任何可能丢失的内容提交功能请求,则在您的方法中更有建设性,并提交错误报告.

原文地址:https://www.jb51.cc/android/309911.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐