我正在尝试以编程方式更改按钮的背景颜色,但当我更改其颜色按钮时会从屏幕上消失。
这是布局中的按钮
<Button
android:id="@+id/ibtn_EA_ColorPick_new"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@drawable/clr_btn"
/>
以下是我如何改变其背景
btn_ColorPick.setBackgroundColor(btn_ColorPick.getContext().getResources().getColor(R.color.BlackColor));
我也试过
btn_ColorPick.setBackgroundColor(getResources().getColor(R.color.BlackColor));
但结果相同
答案 0 :(得分:1)
尝试使用ImageButton -
<ImageButton
android:id="@+id/ibtn_EA_ColorPick_new"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:src="@drawable/clr_btn"
android:background="@drawable/red_color"
/>
btn_ColorPick.setBackgroundColor(->ur color <-);
答案 1 :(得分:0)
尝试
btn_ColorPick.setBackgroundColor(Color.RED); //import of android.graphics.Color
另一种方法是:
bt_exButton.getBackground().setColorFilter(0xFFBBAA00, PorterDuff.Mode.MULTIPLY); //import od import android.graphics.PorterDuff;
也许您尝试将颜色更改为与活动背景相同的颜色并且它会消失,因为它是相同的颜色......