Аналогичный код я вешаю на несколько кнопок, меняя названия самих кнопок соответственно. Тут если я зажимаю кнопку выводит текст с её описанием, но если зажимаю другую кнопку, то опять выводит предыдущее описание. В общем нажимаю на btn1 выводит btn1, нажимаю на btn2 выводит btn1, нажимаю опять на bnt2 выводит btn2.
boolean isDown = false;
Timer timer;
TimerTask task;
int count;
public void start(){
timer.schedule(task, 2,20);
}
public boolean onTouch(final View view, MotionEvent motionEvent) {
switch (view.getId()){
case R.id.imgBntAdd:
switch (motionEvent.getAction()){
case MotionEvent.ACTION_DOWN:
timer = new Timer();
task = new TimerTask() {
public void run() {
if(isDown){
count++;
}
runOnUiThread(new Runnable() {
public void run() {
if(count >= 100){
int[] pos = new int[2];
btnAdd.getLocationInWindow(pos);
String s = btnAdd.getContentDescription().toString();
Toast t = Toast.makeText(context, s, Toast.LENGTH_SHORT);
t.setGravity(Gravity.TOP | Gravity.LEFT, btnAdd.getRight() + 5 ,pos[1] + 20 );
t.show();
count = 0;
isDown = false;
}
}
});
}
};
this.isDown = true;
start();
btnAdd.setBackgroundColor(color1);
this.time1 = System.currentTimeMillis() / 1000;
break;
case MotionEvent.ACTION_UP:
btnAdd.setBackgroundColor(color2);
this.isDown = false;
this.count = 0;
this.time2 = System.currentTimeMillis() / 1000;
if (time1 + 1 - time2 > 0){
startActivityNote();
}
default:
break;
}
break;
Помогите разобраться, пожалуйста.