如何从按钮中获取绘图?

时间:2012-10-30 19:52:23

标签: android

因为在按钮上,我们可以使用android:drawableLeft来设置按钮左侧的drawable。有没有办法以编程方式获得这个可绘制的?

<Button android:id="@+id/detail_refresh_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="@string/refresh" 
        android:gravity="center"
        android:drawableLeft="@drawable/progress"
/>

有没有办法在Java代码中获得可绘制的“进度”?

4 个答案:

答案 0 :(得分:19)

我想你想要Button.getCompoundDrawables()[0]

答案 1 :(得分:3)

查看:http://developer.android.com/reference/android/widget/Button.html

你可以看到

myButton.setCompoundDrawablesWithIntrinsicBounds(Drawable,Drawable,Drawable,Drawable)

应该给你你想要的东西。

订单:左,上,右和下

答案 2 :(得分:0)

如果视图是按钮,

button.getBackground().setLevel(x);
imageView.getDrawable().setLevel(x);

答案 3 :(得分:0)

Doc Link

Button.getCompoundDrawables()[index]

其中index可以分别是drawableLeftdrawableTopdrawableRightdrawableBottom的0、1、2、3。