Эффект нажатия кнопки делаю так: файл button.xml в drawable
И в кнопке соответственно android:background="@drawable/button"
Все работает как надо, но есть одно но, кнопка визуально становится нажатой через ~0.2сек после прикосновения. В принципе это происходит и без оформленной кнопки, даже с простой серой. Подскажите пожалуйста, можно ли как то сделать, чтобы кнопка визуально нажималась в момент прикосновения? Спасибо.
UPD
button_today.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
button_today.setPressed(true);
return true;
}
return false;
}
});
Ответ
Вам нужно создать один экземпляр View.OnTouchListener и присвоить его каждой кнопке:
View.OnTouchListener listener = new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
((Button)findViewById(v.getId())).setPressed(true);
return true;
}
return false;
}
}
button_today.setOnTouchListener(listener);
button_today2.setOnTouchListener(listener);
button_today3.setOnTouchListener(listener);
Комментариев нет:
Отправить комментарий