android: 翻转布局而不翻转其中的内容
android: flip a layout without flipping the content inside it
我正在制作一个 android 应用程序,它支持两种语言(阿拉伯语和英语)
而且正如您所知,英语脚本从左到右阅读,而阿拉伯语脚本从右到左。这要求我在更改语言时翻转布局而不翻转组件,以保持它像以前的图像和文本一样可见和可读。
谢谢
如果我没理解错,你应该在你的换语言方法上改变textView的重力。例如
TextView textView = (TextView) findViewById(R.id.textView); textView.setGravity(Gravity.RIGHT | Gravity.CENTER);
我有一个水平方向的线性布局,如下面的示例图片所示
我猜只改变重力并不能解决问题。
Sample Image
我已经知道如何修复它,而且这是一个艰难的过程。
事情是改变属性
android:scaleX="-1f"
并对 ViewGroup 及其中的每个视图进行此更改。
在这种情况下翻转视图不是正确的方法,android 内置了对不同语言的支持,例如从右到左开始的阿拉伯语,因此您必须使用 RTL 才能正确显示阿拉伯语。
查看这些链接以更好地理解:
我正在制作一个 android 应用程序,它支持两种语言(阿拉伯语和英语)
而且正如您所知,英语脚本从左到右阅读,而阿拉伯语脚本从右到左。这要求我在更改语言时翻转布局而不翻转组件,以保持它像以前的图像和文本一样可见和可读。
谢谢
如果我没理解错,你应该在你的换语言方法上改变textView的重力。例如
TextView textView = (TextView) findViewById(R.id.textView); textView.setGravity(Gravity.RIGHT | Gravity.CENTER);
我有一个水平方向的线性布局,如下面的示例图片所示
我猜只改变重力并不能解决问题。
Sample Image
我已经知道如何修复它,而且这是一个艰难的过程。
事情是改变属性
android:scaleX="-1f"
并对 ViewGroup 及其中的每个视图进行此更改。
在这种情况下翻转视图不是正确的方法,android 内置了对不同语言的支持,例如从右到左开始的阿拉伯语,因此您必须使用 RTL 才能正确显示阿拉伯语。
查看这些链接以更好地理解: