我有一個按鈕,如果你按住手機震動,如果它通過1.5秒改變背景顏色。 但我希望當按下第一個按鈕時將綠色變爲綠色,並且如果再次按下變爲紅色等等,按下按鈕的次數。更改佈局背景按鈕按
我的代碼:
public class MainActivity extends Activity {
public static int MILISEGUNDOS_ESPERA = 1500;
private RelativeLayout mealLayout;
private ToggleButton toggle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mealLayout = (RelativeLayout) findViewById(R.id.layout);
final Vibrator vibrator;
vibrator = (Vibrator) getSystemService(MainActivity.VIBRATOR_SERVICE);
Button btn = (Button) findViewById(R.id.button1);
btn.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
esperarYCerrar(MILISEGUNDOS_ESPERA);
if (action == MotionEvent.ACTION_DOWN) {
vibrator.vibrate(1500);
} else if (action == MotionEvent.ACTION_UP) {
vibrator.cancel();
}
return true;
}
});
}
public void esperarYCerrar(int milisegundos) {
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
// acciones que se ejecutan tras los milisegundos
finalizarApp();
cambiarcolor();
}
}, milisegundos);
}
/**
* Finaliza la aplicación
*/
public void finalizarApp() {
mealLayout.setBackgroundColor(Color.RED);
}
public void cambiarcolor() {
ToggleButton button=(ToggleButton) findViewById(R.id.button1);
if (button.isChecked())
mealLayout.setBackgroundColor(Color.GREEN);
else
mealLayout.setBackgroundColor(Color.RED);
}
}
的問題是,這兩種顏色不工作,只有工作的顏色,我想知道如何在每次按下按鈕,就可把不同顏色的時間做,紅色和綠色。
最新消息您的問題? – justDroid
好的,就是這樣。但問題是什麼? – Rohit5k2
http://stackoverflow.com/a/2895650/5456493判斷它是否工作? – Abhishek