0

我想在我的布局 XML 中使用一组 2 个图像层作为背景。

我猜我能做到:

  1. 使用代码,可能是通过扩展 ImageView/Canvas/Drawable,这是我试图避免的。
  2. 使用布局 XML,具有 2 个嵌套布局,每个图层图像作为背景。或其中包含 2 个 ImageView 的 FrameLayout。

但是,我想知道是否有另一种方法可以使用 XML 定义可绘制对象(就像我使用 XML 定义动画集一样)。

像这样的东西:

我的布局.xml

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/2_image_layer_drawable" >

2_image_layer_drawable.xml [虚构]

   <Set>
       <drawable src="@image_layer_back"/>
       <drawable src="@image_layer_front"/>
   </Set>

有没有?

4

2 回答 2

2

将 alayer-list与两个Bitmap(带有这些图像)drawable 一起用作子项。例子:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <bitmap android:src="@drawable/ic_launcher" />
    </item>
    <item>
        <bitmap android:src="@drawable/ic_launcher" />
    </item>

</layer-list>
于 2012-06-18T13:11:59.393 回答
0

你在说这个吗:

将以下代码与.xml文件一起保存:

<?xml version = "1.0" encoding = "utf-8" ?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@image_layer_back" />
    <item android:state_focused="true" android:drawable="@image_layer_back" />
    <item android:state_selected="true" android:drawable="@image_layer_back" />
    <item android:drawable="@image_layer_front" />
</selector>
于 2012-06-18T13:11:34.573 回答