插入drawable不工作如文档中所述

正如Android开发人员网站上所述:

在XML中定义的可绘制表示将另一个可绘制对象按指定的距离进行插入。 当View需要比View的实际边界更小的背景时,这是非常有用的。

http://developer.android.com/guide/topics/resources/drawable-resource.html#Inset

而不是仅仅移动背景,并在我的情况下留下的内容,插入也移动TextView。

这是布局:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/white" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/bg_inset" android:orientation="horizontal" > <TextView android:id="@+id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some text" android:textSize="23sp" /> </LinearLayout> 

这是bg_inset可绘制的

 <?xml version="1.0" encoding="utf-8"?> <inset xmlns:android="http://schemas.android.com/apk/res/android" android:drawable="@android:color/darker_gray" android:insetLeft="100dp" /> 

这是我得到的结果:

布局结果

Solutions Collecting From Web of "插入drawable不工作如文档中所述"

默认情况下,设置一个可绘制的背景也可以将该可绘制的填充应用于视图。 如果不希望它匹配背景可绘制,请明确设置填充。

尝试使用左填充而不是inset shape

 <?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/darker_gray"/> <padding android:left="100dp"/> </shape>