单击时更改按钮颜色 Android Studio

Change Button Color When Clicked Android Studio

单击按钮时如何更改按钮的颜色,我正在制作一个测验应用程序,当单击按钮时它会更改颜色

只需将 View.OnClickListener 设置为您的 Button 并设置 setBackgroundColor 即可。

Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        v.setBackgroundColor(Color.parseColor("#ff0000"));
    }
});

如果你想在点击另一个按钮时重置颜色,你可以使用按钮之间的公共OnClickListener。下面是一个例子:

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private Button button1;
    private Button button2;
    private Button button3;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button1 = findViewById(R.id.button1);
        button2 = findViewById(R.id.button2);
        button3 = findViewById(R.id.button3);
        button1.setOnClickListener(this);
        button2.setOnClickListener(this);
        button3.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.button1:
                button1.setBackgroundColor(Color.parseColor("#ff0000"));
                button2.setBackgroundColor(Color.parseColor("#0000ff"));
                button3.setBackgroundColor(Color.parseColor("#0000ff"));
                break;
            case R.id.button2:
                button1.setBackgroundColor(Color.parseColor("#0000ff"));
                button2.setBackgroundColor(Color.parseColor("#ff0000"));
                button3.setBackgroundColor(Color.parseColor("#0000ff"));
                break;
            case R.id.button3:
                button1.setBackgroundColor(Color.parseColor("#0000ff"));
                button2.setBackgroundColor(Color.parseColor("#0000ff"));
                button3.setBackgroundColor(Color.parseColor("#ff0000"));
                break;
        }
    }
}

您可以使用一组选项中的 MaterialButtonToggleGroup 到 select:

        <com.google.android.material.button.MaterialButtonToggleGroup
            android:id="@+id/toggleButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:singleSelection="true"
            app:selectionRequired="true">
            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Button 1"
                style="?attr/materialButtonOutlinedStyle"
                />
            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Button 2"
                style="?attr/materialButtonOutlinedStyle"
                />
            <Button
                android:id="@+id/button3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Button 3"
                style="?attr/materialButtonOutlinedStyle"
                />
        </com.google.android.material.button.MaterialButtonToggleGroup>