如果没有美工自己又不会PS,或者为了减少图片资源,可以采取动态修改drawable的方式实现按钮点击效果,首先,准备一份drawable图片资源,然后调用以下方法即可:

    public Drawable tintDrawable(Drawable drawable, ColorStateList colors) {        final Drawable wrappedDrawable = DrawableCompat.wrap(drawable);        DrawableCompat.setTintList(wrappedDrawable, colors);        return wrappedDrawable;    }    private void setDrawable(Button button, Drawable drawable, int color) {        drawable = tintDrawable(drawable, ColorStateList.valueOf(color));        DisplayMetrics dm = new DisplayMetrics();        getWindowManager().getDefaultDisplay().getMetrics(dm);        int size;        size = 90 * dm.heightPixels / 2560;        drawable.setBounds(0, 0, size, size);        button.setCompoundDrawables(null, drawable, null, null);        button.setTextColor(color);    }

监听按钮按下和松开事件,调用setDrawable传入不同color就可以。

更多相关文章

  1. android 内置的短信等调用代码
  2. Android(安卓)PackageManagerService(四)本地安装流程详解
  3. Android(安卓)调用Remote Service方法
  4. Android(安卓)View刷新机制
  5. Android之AppWidget的按钮事件开启Activity
  6. Android(安卓)O media difference(add HIDL)
  7. Android标准调用播放器流程
  8. android linphone中opengl显示的实现
  9. Kivy A to Z -- Android(安卓)apk的生成过程

随机推荐

  1. Android 下载进度条, 自定义加载进度条,loa
  2. [置顶] Android技巧:ListView去掉默认橙黄
  3. android中清空一个表。类似truncate tabl
  4. 使android应用程序不出现在应用管理中
  5. cocos2d-x 2.x iOS和android多分辨率适配
  6. Android Studio: 模拟器启动失败解决(Emul
  7. android学习笔记----多线程断点续传下载
  8. android 调用 react-native方法
  9. Android 功耗优化(5)---Android O 的Doze模
  10. Android 知识图谱