36

我很难在我的LinearLayout.

我知道我可以通过使用 shape drawable XML 来实现圆角,但是如果我将 shape drawable 作为我的背景,LinearLayout那么android:background=@drawable/rounded_corner我无法分配任何图像用作背景。

如何在我的 LinearLayout 中同时获得带有背景图像的圆角?任何帮助,将不胜感激。谢谢!

4

2 回答 2

34

您可以使用LayerDrawable,它可以包含您需要的任意数量的图层(形状或图像)。您可以将其创建为资源或以编程方式。

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/rounded_corners" android:id="@+id/rounded_corners"/>
    <item android:drawable="@drawable/additional_image" android:id="@+id/additional_image" />
</layer-list>
于 2011-06-07T10:29:33.473 回答
3

对于那些寻求不同答案的人

在xml中

<string-array name="ulke_isimleri">
    <item>kan</item>
    <item>kebapeli</item>
</string-array>

<array name="ulke_gorselleri">
    <item>@drawable/kan1</item>
    <item>@drawable/esyalar_kebap_adana</item>
</array>

在 oncreate 或 general

 String[] ulkeAdlari =getResources().getStringArray(R.array.ulke_isimleri);
 TypedArray ulkeGorselleri = getResources().obtainTypedArray(R.array.ulke_gorselleri);

作为一个函数

 @Override
    public Drawable getDrawable(int position) {

         Drawable[] drawable = new Drawable[] { 
                 ulkeGorseli.getDrawable(position   ) 
                 ,
                 new TextDrawable(ulkeAdlari[ position   ]  )
         };
        return new LayerDrawable(drawable);
    }
于 2014-12-16T19:37:24.160 回答