Drawable Resource - Orange168/NotesOnReading GitHub Wiki

####Layer List 2015-11-06 08:10:28 星期五

final TextView tv = (TextView)findViewById(R.id.image_test);
final LayerDrawable ld = (LayerDrawable)tv.getBackground();
tv.post(new Runnable() {
	@Override
	public void run() {
		Log.d(TAG, "onPreDraw tv height is " + tv.getHeight()); 
		int height = tv.getHeight();
		int topInset = height / 2;
		ld.setLayerInset(1, 0, topInset, 0, 0);
		tv.setBackgroundDrawable(ld);
	}
});
  • FILE LOCATION: res/drawable/filename.xml

  • SYNTAX:

<?xml version="1.0" encoding="utf-8"?>
<layer-list
    xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:drawable="@[package:]drawable/drawable_resource"
        android:id="@[+][package:]id/resource_name"
        android:top="dimension"
        android:right="dimension"
        android:bottom="dimension"
        android:left="dimension" />
</layer-list>
  • EXAMPLE: res/drawable/layers.xml:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
      <bitmap android:src="@drawable/android_red"
        android:gravity="center" />
    </item>
    <item android:top="10dp" android:left="10dp">
      <bitmap android:src="@drawable/android_green"
        android:gravity="center" />
    </item>
    <item android:top="20dp" android:left="20dp">
      <bitmap android:src="@drawable/android_blue"
        android:gravity="center" />
    </item>
</layer-list>
<!--layout XML-->
<ImageView
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:src="@drawable/layers" />

effect

⚠️ **GitHub.com Fallback** ⚠️