It is simpler when you have a lot of image buttons, and you don't want to write xml-s for every button.
Java Version:
public static void buttonEffect(View button){
button.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN: {
v.getBackground().setColorFilter(0xe0f47521,PorterDuff.Mode.SRC_ATOP);
v.invalidate();
break;
}
case MotionEvent.ACTION_UP: {
v.getBackground().clearColorFilter();
v.invalidate();
break;
}
}
return false;
}
});
}
Kotlin Version:
fun buttonEffect(button: View) {
button.setOnTouchListener { v, event ->
when (event.action) {
MotionEvent.ACTION_DOWN -> {
v.background.setColorFilter(-0x1f0b8adf, PorterDuff.Mode.SRC_ATOP)
v.invalidate()
}
MotionEvent.ACTION_UP -> {
v.background.clearColorFilter()
v.invalidate()
}
}
false
}
}
'기타 ETC > Android Studio' 카테고리의 다른 글
[Android] Delay handling using postDelayed method (0) | 2020.07.08 |
---|---|
[Android] youtube link open (0) | 2020.07.07 |
안드로이드 LinearLayout 오른쪽 정렬하기, 왼쪽 정렬하기 (0) | 2020.07.02 |
안드로이드 사운드 재생 방법 및 버튼 색깔 바꾸기입니다. (0) | 2020.06.24 |
안드로이드 앱: 국기 맞추기 퀴즈 앱 만들기 소스코드 (0) | 2020.06.24 |