Android代码达成控件按下显示底色效果
发布时间:2021-11-20 15:20:03 所属栏目:教程 来源:互联网
导读:控件设置OnTouchListener,代码如下(控件在xml中需要设置background): btn.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { Drawable drawable = v.getBackground(); if (drawable == null)
控件设置OnTouchListener,代码如下(控件在xml中需要设置background): btn.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { Drawable drawable = v.getBackground(); if (drawable == null) return false; if (Integer.parseInt(Build.VERSION.SDK) > Build.VERSION_CODES.DONUT)// 1.6版本以上使用 { drawable.mutate(); } switch (event.getAction()) { case MotionEvent.ACTION_DOWN: drawable.setColorFilter(Color.argb(100, 0, 0, 0), Mode.DST_IN); //此处值可自行调整 v.setBackgroundDrawable(drawable); break; case MotionEvent.ACTION_UP: drawable.clearColorFilter(); v.setBackgroundDrawable(drawable); break; case MotionEvent.ACTION_CANCEL: drawable.clearColorFilter(); v.setBackgroundDrawable(drawable); break; default: break; } return false; } }); ![]() (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |