这个想法是按钮可以在第一次点击时做一件事,在第二次点击时做另一件事。
button_food = (Button) findViewById(R.id.foodicon_layout);
button_travel = (Button) findViewById(R.id.travelicon_layout);
button_fuel = (Button) findViewById(R.id.fuelicon_layout);
button_fetch = (Button) findViewById(R.id.fetchicon_layout);
button_travel.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
button_food.setVisibility(View.GONE);
button_fuel.setVisibility(View.GONE);
button_fetch.setVisibility(View.GONE);
}
});
在给定的示例中,当单击 button_travel 时,其他按钮将不可见。再次单击相同按钮时,我希望其他按钮再次可见。
最佳答案
您可以通过获取按钮的当前可见性并切换它来设置按钮的可见性。
button_food = (Button) findViewById(R.id.foodicon_layout);
button_travel = (Button) findViewById(R.id.travelicon_layout);
button_fuel = (Button) findViewById(R.id.fuelicon_layout);
button_fetch = (Button) findViewById(R.id.fetchicon_layout);
button_travel.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
int visibility = button_food.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE;
// Perform action on click
button_food.setVisibility(visibility);
button_fuel.setVisibility(visibility);
button_fetch.setVisibility(visibility);
}
});
这样写只是一个简单的if语句的写法
int visibility;
if(button_food.getVisibility() == View.VISIBLE){
visibility = View.GONE;
} else {
visibility = View.VISIBLE;
}
关于java - 同一个按钮多次点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31646673/