2

我有一个简单的问题,我不明白出了什么问题。这里有什么问题?应该很简单。

我正在尝试制作一个 2 层图层列表,其中一层作为剪辑。这是我按照说明制作的clip_source.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item        

            android:drawable="@drawable/img_spare"/>

    <item android:id="@+id/clip">   
    <clip 
    android:clipOrientation="horizontal"
    android:drawable="@drawable/img_filled"
    android:gravity="left" />
    </item>
 </layer-list>   

活动很简单:

public class MainActivity extends Activity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    ImageView img = (ImageView) findViewById(R.id.imageView1);

        LayerDrawable ld= (LayerDrawable) getResources().getDrawable(R.drawable.clip_source);
        ClipDrawable cd=(ClipDrawable) ld.findDrawableByLayerId(R.id.clip);

        cd.setLevel(4000);
        //((ClipDrawable) ld.findDrawableByLayerId(R.id.clip)).setLevel(4000);
    img.setImageDrawable(ld);
    }
}

cd.setLevel(4000)(或者如果我尝试getLevel())会以未知异常使所有内容崩溃。有没有简单的方法来解决这个问题?

4

0 回答 0