我想為EditText我的 Android 布局中的一個組件創建一個自定義的可繪制背景。這應該包括一個跨越整個長度的下邊框EditText,以及兩端的 2 條連接的垂直線,占高度的 25%,如下所示:

然后,文本本身將android:gravity="left|center"在左側/頂部/底部使用少量邊距。
我已經能夠在其他輸入文本元素上創建自定義邊框,希望使用如下形狀包含所有邊框:
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid
android:color="@android:color/transparent"/>
<corners
android:bottomRightRadius="4dp"
android:bottomLeftRadius="4dp"
android:topLeftRadius="4dp"
android:topRightRadius="4dp"/>
<stroke
android:color="@color/lightgrey"
android:width="1dp"/>
</shape>
但是,現在我不想要一個完整的矩形,只有 1 個完整邊 2 個部分邊。
uj5u.com熱心網友回復:
實作這一目標的兩個步驟:
- 通過添加負插圖洗掉頂部、右側和左側邊框,僅保留底部邊框
android:left|right|top。 - 為側面專案添加新矩形:調整左/右相關重力,并將高度限制為您想要的大小(此處設定為 8dp):
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Bottom border -->
<item
android:left="-50dp"
android:right="-50dp"
android:top="-50dp">
<shape android:shape="rectangle">
<stroke
android:width="1dp"
android:color="@color/lightgrey" />
</shape>
</item>
<!-- Left border -->
<item
android:height="8dp"
android:gravity="left|bottom">
<shape android:shape="rectangle">
<solid android:color="@color/lightgrey" />
<size android:width="1dp" />
</shape>
</item>
<!-- Right border -->
<item
android:height="8dp"
android:gravity="right|bottom">
<shape android:shape="rectangle">
<solid android:color="@color/lightgrey" />
<size android:width="1dp" />
</shape>
</item>
</layer-list>
這是結果

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/460520.html
標籤:安卓 安卓布局 android-edittext 安卓可绘制 机器人形状
