there are a set of buttons, I want to get the result:
when I click one of them, first I divide them into two parts: the clicked one and the others. try to set different color or alpha value to different them.
give me some advice. thx.
now I use setAlpha, but when I change the value from 0 to 255, it work, but when i change the value from 255 to 0 , it doesnot work. I don't know why.
Maybe after I invoke the method"Button.setAlpha()", I need invoke other method?
my code: public class MainActivity extends Activity { // button alpha value: minimize value public static int BUTTON_ALPHA_MIN = 0;
// button alpha value: maximize value public static int BUTTON_ALPHA_MAX = 255;
private LinearLayout centerRegion; private LinearLayout bottomRegion;
private Button btnCheckIn; private Button btnReview; private Button btnMyCircles; private Button btnSettings;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);
// get all the widgets getAllWidgets();
// set buttons click response function btnCheckIn.setOnClickListener(new OnClickListener() { public void onClick(View v) { centerRegion.setBackgroundColor(android.graphics.Color.RED);
btnReview.getBackground().setAlpha(BUTTON_ALPHA_MIN);
btnMyCircles.getBackground().setAlpha(BUTTON_ALPHA_MIN);
btnSettings.getBackground().setAlpha(BUTTON_ALPHA_MIN);
btnCheckIn.getBackground().setAlpha(BUTTON_ALPHA_MAX);
} });
btnReview.setOnClickListener(new OnClickListener() {
public void onClick(View v) { centerRegion.setBackgroundColor(android.graphics.Color.BLUE);
btnCheckIn.getBackground().setAlpha(BUTTON_ALPHA_MIN);
btnMyCircles.getBackground().setAlpha(BUTTON_ALPHA_MIN);
btnSettings.getBackground().setAlpha(BUTTON_ALPHA_MIN);
btnReview.getBackground().setAlpha(BUTTON_ALPHA_MAX);
} });
btnMyCircles.setOnClickListener(new OnClickListener() { public void onClick(View v) { centerRegion.setBackgroundColor(android.graphics.Color.YELLOW);
btnCheckIn.getBackground().setAlpha(BUTTON_ALPHA_MAX);
btnReview.getBackground().setAlpha(BUTTON_ALPHA_MAX);
btnSettings.getBackground().setAlpha(BUTTON_ALPHA_MAX);
v.getBackground().setAlpha(BUTTON_ALPHA_MIN);
} });
btnSettings.setOnClickListener(new OnClickListener() {
public void onClick(View v) { centerRegion.setBackgroundColor(android.graphics.Color.MAGENTA);
btnCheckIn.getBackground().setAlpha(BUTTON_ALPHA_MAX);
btnReview.getBackground().setAlpha(BUTTON_ALPHA_MAX);
btnMyCircles.getBackground().setAlpha(BUTTON_ALPHA_MAX);
v.getBackground().setAlpha(BUTTON_ALPHA_MIN);
} }); }
/** * get all the widgets */ public void getAllWidgets() { this.centerRegion = (LinearLayout) this.findViewById(R.id.center_region); this.bottomRegion = (LinearLayout) this.findViewById(R.id.bottom_region);
this.btnCheckIn = (Button) this.findViewById(R.id.button_check_in); this.btnReview = (Button) this.findViewById(R.id.button_review); this.btnMyCircles = (Button) this.findViewById(R.id.button_my_circles); this.btnSettings = (Button) this.findViewById(R.id.button_setting); } }