Как использовать форму, которая может быть скреплена вместе с изображением?
У меня есть эта проблема с тем, чтобы иметь как округленный угол, так и фоновое изображение в моем LinearLayout
.
Я знаю, что могу достичь округленного угла, используя XML-форму, пригодную для рисования, но если я поместим форму в качестве фона моего LinearLayout
с android:[email protected]/rounded_corner
, то я не могу назначить какое-либо изображение для использования в качестве фона.
Как я могу получить закругленный угол с фоновым изображением в LinearLayout?
Любая помощь будет оценена по достоинству. Спасибо!
Ответы
Ответ 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);
}