我有一个左侧可绘制的按钮:
<Button
android:id="@+id/post_feeling_btn"
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="4dp"
android:drawableLeft="@drawable/feeling_btn"
android:gravity="left|center_vertical"
android:textColor="@color/gray"
android:text="Sentimento"/>
在我的简历方法中,我以编程方式更改按钮的文本:
Button setFeeling;
FeelingButton selectedFeeling;
@Override
public void onResume() {
super.onResume();
selectedFeeling = ((FeedActivity)getActivity()).getSelectedFeeling();
if(selectedFeeling != null){
setFeeling.setText(selectedFeeling.getFeeling());
}
}
有没有办法改变我的drawable left并使用我在selectedFeeling对象中的图像以相同的方法设置图像?我正在寻找类似的东西:
setFeeling.setDrawable();
答案 0 :(得分:9)
尝试这样的事情:for drawableLeft
int imgResource = R.drawable.your_drawable;
setFeeling.setCompoundDrawablesWithIntrinsicBounds(imgResource, 0, 0, 0);
setFeeling.setCompoundDrawablePadding(8); //for padding
感谢此处的Answer。
答案 1 :(得分:1)
setFeeling.setBackgroundResource(R.drawable.appIcon);