Android中ClipDrawable的用法

今天想把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();

改成上述就可以运行了。

 

擦,浪费哥1个多小时,谁来负责?!擦,那源文档里德运行图案不知道到底是怎么来的,气愤!希望看到这篇文章也用到这个的朋友别再走弯路了。

你可能感兴趣的:(Android中ClipDrawable的用法)