今天想把drawable下的所有Drawable Resources 弄清楚,看到Clip Drawable 的时候,把以下原文档里的列子考到自己建的项目下
clip.xml
<?xml version="1.0" encoding="utf-8"?>
<clip xmlns:android=http://schemas.android.com/apk/res/android
android:drawable="@drawable/android"
android:clipOrientation="horizontal"
android:gravity="left" />
</clip>-----------------------------①
main.xml加入
<ImageView android:id="@+id/image" android:background="@drawable/clip" android:layout_height="wrap_content" android:layout_width="wrap_content" />
MainActivity加入
ImageView imageview = (ImageView) findViewById(R.id.image);
ClipDrawable drawable = (ClipDrawable) imageview.getDrawable();-------------------------②
drawable.setLevel(drawable.getLevel() + 1000);
当这样做好之后,你会发现①处根本是多余的。这个很容易发现。
其二,②处竟然报空指针异常。
看了ClipDrawable中的方法已及clip.xml中android:drawable="@drawable/android"找到了这个方法
ClipDrawable drawable = (ClipDrawable) imageview.getBackground();
改成上述就可以运行了。