android代码设置点击涟漪,android – 为自定义CompoundButton添加涟漪效果
我有以下自定义CompoundButton:
public class CustomCompoundButton extends CompoundButton {
public CustomCompoundButton(Context context) {
this(context, null);
}
public CustomCompoundButton(Context context, AttributeSet attrSet) {
super(context, attrSet);
setup();
}
private void setup() {
setBackgroundResource(R.drawable.button_selector);
setGravity(Gravity.CENTER);
setClickable(true);
}
}
在将布局添加到布局后,我从代码中设置了Button的宽度和高度:
button.getLayoutParams().width = myWidth;
button.getLayoutParams().height = myHeight;
button_selector.xml:
android:drawable="@drawable/button_checked"
android:state_checked="true" />
android:drawable="@drawable/button_unchecked"
android:state_checked="false" />
button_checked.xml:
android:shape="oval">
button_unchecked.xml:
android:shape="oval">
android:width="2dp"
android:color="?colorAccent" />
这按预期工作,未选中时按钮为空圆圈,选中时为实心圆圈.
问题是我无法在此行为之上添加涟漪效应.
我试图将选择器包装在ripple标签中,如下所示:
android:color="#ffffff">
android:drawable="@drawable/button_checked"
android:state_checked="true" />
android:drawable="@drawable/button_unchecked"
android:state_checked="false" />
这种方法存在多个问题:
>背景形状被涟漪完全覆盖,它们不再可见(无论它们是否被检查)
背景形状应该保持不变,我只想在点击按钮时添加涟漪效果(选中或取消选中)
>涟漪效应的半径太大,它们相互重叠
纹波半径应与我的按钮半径相同.
我不知道如何做这项工作,真的很感激任何建议.
android代码设置点击涟漪,android – 为自定义CompoundButton添加涟漪效果相关推荐
- android 代码设置dialog 全屏,Android里把Dialog设置为全屏的方法
Android里把Dialog设置为全屏的方法 有的时候我们需要把Dialog设置为全屏,于是我们想到了如下的办法: //设置成全屏 LinearLayout.LayoutParams p = new ...
- android 代码设置EditText的hint字符
今天,简单讲讲android里如何在代码里设置 EditText的hint字符. 之前,我一般是直接在xml文件设置EditText 的hint字符,后来需要在代码里修改hint字符,发现自己居 ...
- android 铃声设置失败,无法通过Android代码设置铃声
我正在开发一个应用程序,它将随机设置用户已选择的铃声列表中的铃声.无法通过Android代码设置铃声 虽然我的代码适用于Android N及以上版本,但我遇到了Android M及以下版本的问题.我为 ...
- android 代码设置 键盘适应_Android自适应软键盘的Dialog以及监听软键盘弹起
最近项目中遇到一个需求:新手引导.跟一般的新手引导没有什么太大区别,思路都是搞一个带阴影的遮罩层,然后在上边儿给一些提示性的文字,由于需求中有些特殊的地方,所以我用了一个全屏的dialog(而且,di ...
- android代码设置drawor色值,Android 着色器 tint
本文主要总结了 Android 着色器的使用及其原理,在实现同等效果的情况下,减少资源图的使用以减小 apk 包的体积并降低对内存的占用. 假设我们想实现一种效果,如下: 不怎么友好的做法是让设计师给 ...
- android 代码设置alignleft,如何动态的设置Relative Layout中按钮的layout_align_parent_right属性...
我动态的创建了一个Relative Layout:RelativeLayout layout = new RelativeLayout( this ); RelativeLayout.LayoutPa ...
- android 代码设置像素,【Android实例】用设计原则来重构1像素保活代码
1 类图 在[FJU项目]1像素进程保活(二)中,涉及到的几个类的类图如下所示(仅供参考): 实线箭头:关联 虚线箭头:依赖 重构前UML类图在上图中,OnePixelManager里面有太多的职责, ...
- android代码设置maxlength,android-使用maxLength使用3个点结束TextView
android-使用maxLength使用3个点结束TextView 我的布局中有一个TextView,它是layout_width中的wrap_content. 最多限制为15个字符,因此我正在使用 ...
- android代码设置弹窗颜色,Android编程实现简单设置按钮颜色的方法
本文实例讲述了Android编程实现简单设置按钮颜色的方法.分享给大家供大家参考,具体如下: 1.工程目录 a.在res目录-新建drawble文件夹放入自定义图片 2.main.xml androi ...
- android 代码设置圆角,Android中用Shape实现圆角和局部圆角
本文讲解如何实现布局边框的部分圆角 大家可能都知道圆角实现其实很简单, 在drawable文件夹下新建xml文件加入以下代码 情景1: 四个角均为圆角 android:shape="rect ...
最新文章
- mysql的模糊查询在xml_数据库模糊查询语句(mybatis中运用(xml文件))
- 武未转变服务器tp,未转变者怎么tp别人 | 手游网游页游攻略大全
- android 点击侧滑代码,代码分析Android实现侧滑菜单
- asp.net 读取excel文件的一些方法,NPOI方法
- JAVA能做flash游戏吗_FLASH+JAVA开发实时网络游戏 (转:闪客帝国)
- 关于TTThumbsViewController加载更多
- 使用IntelliJ IDEA创建SpringMVC项目
- ENVI的seamless mosaic工具详解
- ftp协议是一种用于什么的协议_购房协议怎么写?签购房协议要注意什么
- Day005 20210218-20210221
- PuTTY怎么读,PuTTY怎么发音,PuTTY的发音
- Wilcoxon符号秩检验及其matlab代码
- 合约战事风云 |链捕手
- SpringBoot整合elasticsearch (java整合es)
- 【LeetCode】复数乘法
- Maven手动添加dependency(以Oracle JDBC为例)
- 苹果系统设置http代理ip教程
- python一般用几个空格表示缩进_Python 就是使用缩进来表示代码块,一般使用几个空格来表示一个缩进_女子礼仪答案_学小易找答案...
- android输入法框架分析,Android与iOS输入法开发框架比较谈
- 京东数科“四位一体”布阵新基建沙场