我如何根据应用程序区域设置将正确的图像应用到 ImageView?
How can i apply the proper image to the ImageView based on the application Locale?
有什么方法可以让 ImageView 的不同语言有不同的图像吗?
假设我有这两张图片,第一张是从右到左的语言,第二张是从左到右的语言,我如何根据我的应用程序区域设置将正确的图像应用到 ImageView?
<ImageView
android:id="@+id/message_icon"
android:layout_width="@dimen/message_text_icon"
android:layout_height="@dimen/message_text_icon"
android:src="@drawable/sent_message_icon"
android:padding="@dimen/padding_small"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"></ImageView>
普通图片放在drawable-*
文件夹里 rtl图片放在drawable-ldrtl-*
文件夹里
如果要使用单图:
将 <integer name="angle_rtl_180">0</integer>
放入 values/integers
和
<integer name="angle_rtl_180">180</integer>
在 values-ldrtl/integers
然后在 imageView 中使用 rotationY
属性作为:
android:rotationY="@integer/angle_rtl_180"
不需要像您提到的场景那样创建不同的图像,因为那样会增加 apk 的大小。您需要检查语言是否有变化,是否有旋转视图的方法。您只需围绕 x 和 y 轴旋转并通过所需的旋转角度即可完成。你可以使用下面的代码来旋转
imageView.setRotation(angle);
角度是你要旋转的值
希望对你有帮助
有什么方法可以让 ImageView 的不同语言有不同的图像吗?
假设我有这两张图片,第一张是从右到左的语言,第二张是从左到右的语言,我如何根据我的应用程序区域设置将正确的图像应用到 ImageView?
<ImageView
android:id="@+id/message_icon"
android:layout_width="@dimen/message_text_icon"
android:layout_height="@dimen/message_text_icon"
android:src="@drawable/sent_message_icon"
android:padding="@dimen/padding_small"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"></ImageView>
普通图片放在drawable-*
文件夹里 rtl图片放在drawable-ldrtl-*
文件夹里
如果要使用单图:
将 <integer name="angle_rtl_180">0</integer>
放入 values/integers
和
<integer name="angle_rtl_180">180</integer>
在 values-ldrtl/integers
然后在 imageView 中使用 rotationY
属性作为:
android:rotationY="@integer/angle_rtl_180"
不需要像您提到的场景那样创建不同的图像,因为那样会增加 apk 的大小。您需要检查语言是否有变化,是否有旋转视图的方法。您只需围绕 x 和 y 轴旋转并通过所需的旋转角度即可完成。你可以使用下面的代码来旋转
imageView.setRotation(angle);
角度是你要旋转的值 希望对你有帮助