Как установить размер рисования в списке слоев

У меня проблема с установкой размера drawable в списке слоев. Мой XML выглядит так:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/menu_drawable1"/>
    <item android:drawable="@drawable/menu_drawable2"/>       
</layer-list>

Drawable1 больше Drawable2, поэтому размер Drawable2 изменяется. Как отменить это и установить исходный размер Drawable2? Я не хочу, чтобы он менял размер. Я попытался установить ширину и высоту, но это не сработало. Кроме того, чертежи на самом деле не являются растровыми изображениями, они являются выделенными, поэтому я не могу использовать трюк с растровыми изображениями.


Похоже, что я получил половину решения, используя "left" и "right", но все же это не позволяет мне автоматически устанавливать точный размер изображения. Теперь мой xml выглядит так:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/menu_drawable1"/>
    <item android:drawable="@drawable/menu_drawable2" android:right="150dp"/>       
</layer-list>
30
задан Bhargav Rao 1 April 2018 в 22:09
поделиться

2 ответа

Для этого вы можете использовать встроенный тег. Например,

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:drawable="@drawable/menu_drawable1"/>
   <item>
       <inset android:drawable="@drawable/menu_drawable2"
           android:insetRight="50dp"
           android:insetTop="50dp"
           android:insetLeft="50dp"
           android:insetBottom="50dp" />
   </item>

Это создаст отступы вокруг вас menu_drawable2, поэтому он не будет масштабироваться. Просто установите необходимые размеры.

2
ответ дан 28 November 2019 в 00:31
поделиться

Я не знаю его работ или нет, но вы пытались отделить их друг от друга?

что-то вроде этого:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/menu_drawable1"/>
</layer-list>
<layer-list>
    <item android:drawable="@drawable/menu_drawable2"/>       
</layer-list>

или поместить что-то еще между ними, как пустой макет с высота и ширина 0дп.

-3
ответ дан 28 November 2019 в 00:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: