我最近正在努力在Android Studio上創建一個基於java的代碼,這是我從2天開始工作的。不幸的是,我無法找到我的計算器或任何其他論壇問題的任何決議..突出顯示Button onClick if語句
我嘗試在紅色或綠色取決於點擊時突出顯示一個按鈕,如果按鈕文本文本1或與字符串的文本2陣列。
如果我運行該應用程序,它總是向我顯示一個錯誤,或者當我按下它時按鈕根本不會改變它的顏色。我想這與if-clause有關,但我不知道如何以其他方式解決這個問題。
我真的很感謝在這件事情上的任何幫助!
Button button1;
Button button2;
String[] txtString;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.first_layout);
txtString = getResources().getStringArray(R.array.optiontxt);
String random = txtString[new random().nextInt(txtString.length)];
button1 = (Button)findViewById(R.id.btn1);
button2 = (Button)findViewById(R.id.btn2);
if (random == txtString[0])
{
button1.setText(txtString[0]);
button1.setBackgroundResource(R.drawable.button_green);
button2.setText(txtString[1]);
button2.setBackgroundResource(R.drawable.button_red);
}
else
{
button1.setText(txtString[1]);
button1.setBackgroundResource(R.drawable.button_red);
button2.setText(txtString[0]);
button2.setBackgroundResource(R.drawable.button_green);
} button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {}}; button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {}};
:綠色按鈕
XML代碼
<item
android:state_pressed="true"
android:drawable="#81c784"/>
<item
android:state_selected="true"
android:drawable="@color/#4caf50"/>
紅色按鈕
<item
android:state_pressed="true"
android:drawable="#FF4081"/>
<item
android:state_selected="true"
android:drawable="#d50000"/>
Java代碼的XML代碼我也嘗試了各種其他的代碼來設置不工作的按鈕的背景,例如,
button1.setBackground(Drawable.createFromPath(「/ drawable/button_green」)); 。
或
button1.getBackground()的setState(新INT [] {R.drawable.button_green});
或
button1.setBackgroundResource(R.drawable.button_green);
我會非常感謝任何幫助。 非常感謝您提前!
是的,我已經試過,但它沒有奏效。我認爲這是因爲if語句。 – LoveCoding