問題の一部は、レイヤーリスト内の個々のアイテムがドロアブルの全体のサイズにスケーリングされることです。 the docsに記載されているように、bitmap
の描画可能な小さな四角形で囲むことで回避できます。このような何かが働くかもしれません。まず、個別の描画可能として基本的な形状を定義します。
描画可能/ square.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="1px" android:color="#fff" />
<solid android:color="#00FF0000" />
<corners android:radius="3dp" />
<size android:width="10dp" android:height="10dp"/>
</shape>
(EDIT:あなたが上記の操作を行うことができれば、それはいいだろうが、残念ながら@Someoneコメントのどこかで指摘されているように、<bitmap>
タグ内からシェイプドロアブルを参照することはできません。残りの部分は実際のビットマップグラフィックとして作成する必要があります。
それは少しずれることがありますので、
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- first row -->
<item android:left="20dp" android:top="20dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<item android:left="35dp" android:top="20dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<item android:left="50dp" android:top="20dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<!-- second row -->
<item android:left="20dp" android:top="35dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<item android:left="35dp" android:top="35dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<item android:left="50dp" android:top="35dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<!-- third row -->
<item android:left="20dp" android:top="50dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<item android:left="35dp" android:top="50dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
<item android:left="50dp" android:top="50dp">
<bitmap android:src="@drawable/square" android:gravity="top|left" />
</item>
</layer-list>
私はこれをテストしていませんが、あなたはそれを微調整することができるはず:3210
その後は、個々の正方形をスケーリングしません層-リストを定義することができますあなたが望むものを得るために。重要なのは、スケーリングを取り除くことです。
2行目 上部:50 左:10 底:50 右:90 三行 上部:90 左:10 底:10 右:90 – Lunf