我想在 xml 中有一个解决方案或一个关键字来搜索什么来解决我的问题:
我有多个屏幕。layout
每个屏幕在文件夹中都有自己的 xml 。例如代码的一部分:
<RelativeLayout
android:id="@+id/headerLayout"
android:layout_width="fill_parent"
android:layout_height="80dp"
android:background="@drawable/header" >
<Button
android:id="@+id/btBack"
android:layout_width="55dp"
android:layout_height="33dp"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dip"
android:layout_marginTop="10dip"
android:background="@drawable/bt_back"
/>
</RelativeLayout>
现在,我想在 "@drawable/header"
旋转时更改值运行时,最好配置和 Android 在 Java 代码中更改不是我。同样的事情也可以用 来完成
"@drawable/bt_back"
,它是bt_back.xml
文件drawable
夹中的一个文件,并且有一个选择器。他的内容在这里:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- selected state -->
<item android:drawable="@drawable/bt_back_pressed" android:state_pressed="true" android:state_selected="false"/>
<item android:drawable="@drawable/bt_back_pressed" android:state_pressed="false" android:state_selected="true"/>
<item android:drawable="@drawable/bt_back_pressed" android:state_pressed="true" android:state_selected="true"/>
<!-- unselected state (default) -->
<item android:drawable="@drawable/bt_back_normal"/>
</selector>
现在在我想要drawable-hdpi,drawable-ldpi的文件夹中,我只需要放置这2个文件,android系统会根据用户设备dpi自动处理按下和正常状态的图像更改。
对于从纵向和横向旋转的标题,我想拥有同样的东西。例如,它应该将 header_port.png 替换为 header-land.png。
怎么可能?有任何想法吗?
我不想为景观使用不同的 .xml 布局,也不想在 Java 代码中挖掘。也许在不同的文件夹中,这里描述的标题资源?港口和陆地?