java - 如何动态有效地应用 RTL

标签 java android android-layout textview right-to-left

每当我应用 layoutAmount.setRotationY(180); 时,我正在动态地创建和添加线性布局中的 TextViews也会改变错误的方向,例如,如果单词 sorry its 变成 yrros,我该如何正确应用 RTL

谢谢!

最佳答案

setLayoutDirection 会根据语言设置布局方向

-确保使用布局重力开始和结束

 public static void setLanguage(Context context, String language) {
            String[] localeLang = language.split("_");
            Locale locale;
            if (localeLang.length > 1)
                locale = new Locale(localeLang[0], localeLang[1]);
            else
                locale = new Locale(localeLang[0]);
            Locale.setDefault(locale);
            Configuration config = new Configuration();
            config.locale = locale;
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
                config.setLayoutDirection(locale);
                ((Activity) context).getWindow().getDecorView().setLayoutDirection(config.getLayoutDirection());
            }
            context.getResources().updateConfiguration(config,
                    context.getResources().getDisplayMetrics());
        }

关于java - 如何动态有效地应用 RTL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52983285/

相关文章:

android - 如何在样式中引用颜色属性

android - 在 android 中从哪里开始翻页效果?

java - Primefaces selectOneListbox 值为 null

抛出 javax.imageio.IIOException : Can't read input file! ,但我不知道为什么会这样?

java - 由于 SSLException 无法连接到 SQLServer

java - 我的 Swing 应用程序中的边框布局出了什么问题?

android - 当用户使用“主页”或“概述”按钮离开应用程序时,如何更新 React Native 中的组件?

Android 在谷歌地图中添加地点图标

android - 如何知道android中的Intent.ACTION_SEND中选择了哪个 Intent

java编码风格(Android),我应该在单独的行上声明变量吗?