Подтвердить что ты не робот

Как использовать форму, которая может быть скреплена вместе с изображением?

У меня есть эта проблема с тем, чтобы иметь как округленный угол, так и фоновое изображение в моем LinearLayout.

Я знаю, что могу достичь округленного угла, используя XML-форму, пригодную для рисования, но если я поместим форму в качестве фона моего LinearLayout с android:[email protected]/rounded_corner, то я не могу назначить какое-либо изображение для использования в качестве фона.

Как я могу получить закругленный угол с фоновым изображением в LinearLayout? Любая помощь будет оценена по достоинству. Спасибо!

4b9b3361

Ответ 1

Вы можете использовать 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>

Ответ 2

для тех, кто ищет другой ответ

в 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 или вообще

 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);
    }