Белая граница вместе с прозрачностью в «LinearLayout»

Я хотел добавить линейный макет, имеющий прозрачный фон, а также белые границы. Проблема в том, что, насколько я понял, я могу достичь только одного из них.

Вот что я сделал:

  1. Сохранено следующее: border.xml в drawable

    <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="#FFFFFF" /> </shape> </item> <item android:left="5dp" android:right="5dp" android:top="5dp" android:bottom="5dp" > <shape android:shape="rectangle"> </shape> </item> </layer-list> 
  2. Мой существующий макет страницы

      <LinearLayout android:id="@+id/quiz" android:layout_width="150dp" android:layout_height="120dp" android:background="#66041414" <-------- replaced it with android:background="@drawable/border" android:orientation="vertical" android:layout_marginLeft="5dp" > ...... </LinearLayout> 

Я получаю непрозрачный фон, когда была включена граница.

Я хотел получить конечный результат:

Справочное изображение

Полностью застрял с ним. Просто хотел найти выход, чтобы добиться этого. Любые предложения были бы весьма полезными.

Solutions Collecting From Web of "Белая граница вместе с прозрачностью в «LinearLayout»"

Выбираемый для фона макета:

Вы можете изменить радиус для угловой формы, если хотите. Но инсульт создает границу, а сплошная часть – это фон, который мы делаем прозрачным.

 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <corners android:radius="2dp" android:topRightRadius="0dp" android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" /> <stroke android:width="1dp" android:color="@android:color/white" /> <solid android:color="@android:color/transparent"/> </shape> 1 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <corners android:radius="2dp" android:topRightRadius="0dp" android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" /> <stroke android:width="1dp" android:color="@android:color/white" /> <solid android:color="@android:color/transparent"/> </shape> 

И мой тест layout.xml

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/ll1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/ll2" android:layout_height="50dp" android:layout_width="50dp" android:background="@drawable/my_transparent_linear_layout"></LinearLayout> </LinearLayout> 

Это работает. Ниже приведено доказательство:

Введите описание изображения здесь

Для этого вы можете использовать два макета, aligned одной верхней части другого, затем установите для фона transparent top view и установите белую рамку в качестве фона для представления bottom view . Вы можете сделать это в relative layouts .

Xml Подходит для фона:

 <shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:radius="30dp" /> <stroke android:width="5dp" android:color="#ffffffff"/> <solid android:color="#66000000"/> </shape> 

Настройте радиус, ширину и темную прозрачность цвета (#ff и # 66), как вам угодно.

В самом деле, хорошее предложение @Ali Imran, проверьте ниже, надеюсь, это поможет.

back.xml

 <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <stroke android:width="1dp" android:color="#dd7b7a"/> <corners android:bottomRightRadius="10dp" android:bottomLeftRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp"/> <solid android:color="#dd7b7a"/> </shape> 

main.xml

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" > <LinearLayout android:padding="4dip" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/back" android:gravity="center_horizontal" > <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/tile_mode" // your transparent image /> </LinearLayout> </LinearLayout> 

Также пройдите ниже ссылок в том, что способ использования xml будет работать для вас.

Растровое изображение с закругленными углами с инсультом