Android 点击变换透明度的效果

实现图片点击变换透明度的效果,可以切两张图片,使用选择器实现:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/ic_view_pressed" android:state_pressed="true" />
    <item android:drawable="@drawable/ic_view" />
</selector>

那么如果很多图片都需要这个透明度变换的效果,切很多图片,写很多选择器,很不方便。

安卓中View设置透明度:
在代码中:view.setAlpha(0.5f);
在xml中:android:alpha="0.5"

值0~1,0透明,1不透明,可以通过添加OnTouchListener监听,在点击和抬起时设置alpha值。
需要配合设置OnClickListener使用,否则状态不会还原。

    public static void setAlphaChange( final View ...views){
        for (View view : views) {
            view.setOnTouchListener(new View.OnTouchListener() {
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    switch (event.getAction()) {
                        case MotionEvent.ACTION_DOWN:
                            v.setAlpha(0.6f);
                            break;
                        case MotionEvent.ACTION_UP:
                        case MotionEvent.ACTION_CANCEL:
                            v.setAlpha(1.0f);
                            break;
                    }
                    return false;
                }
            });
        }
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。