一个切换button背景的方法:getBackground(),setBackgroundDrawable
来源:互联网 发布:海洋cms模板怎么用 编辑:程序博客网 时间:2024/06/03 16:33
场景:假设页面中有多个button,点击其中一个button1,button1背景改变并保持,其他button则会默认状态。
方法:通过getBackground()获取控件的默认drawable,通过setBackgroundDrawable设置给其他控件。
代码实例:
//
setRed = new Button(mContext);
setRed.setText(R.string.set_red);
setRed.setX(xBtn);
setRed.setY(yBtn);
setRed.setBackgroundColor(Color.RED);
setRed.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
graffitiView.setPaintColor(Color.RED);
setGreen.setBackgroundDrawable(drawable);
setBlue.setBackgroundDrawable(drawable);
setRed.setBackgroundColor(Color.RED);
setRed.setFocusable(false);
setGreen.setFocusable(false);
setBlue.setFocusable(false);
}
});
this.addView(setRed, mLayoutParamsBtn);
//
setGreen = new Button(mContext);
setGreen.setText(R.string.set_green);
setGreen.setX(wBtn + xBtn*2);
setGreen.setY(yBtn);
drawable = setGreen.getBackground();
setGreen.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
graffitiView.setPaintColor(Color.GREEN);
setRed.setFocusable(false);
setGreen.setFocusable(false);
setBlue.setFocusable(false);
setRed.setBackgroundDrawable(drawable);
setBlue.setBackgroundDrawable(drawable);
setGreen.setBackgroundColor(Color.GREEN);
}
});
this.addView(setGreen, mLayoutParamsBtn);
//
setBlue = new Button(mContext);
setBlue.setText(R.string.set_blue);
setBlue.setX(wBtn*2 + xBtn*3);
setBlue.setY(yBtn);
setBlue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
graffitiView.setPaintColor(Color.BLUE);
setRed.setFocusable(false);
setGreen.setFocusable(false);
setBlue.setFocusable(false);
setRed.setBackgroundDrawable(drawable);
setGreen.setBackgroundDrawable(drawable);
setBlue.setBackgroundColor(Color.BLUE);
}
});
this.addView(setBlue, mLayoutParamsBtn);
- 一个切换button背景的方法:getBackground(),setBackgroundDrawable
- Button.setBackgroundDrawable,显示的文字未居中
- Button 点击切换背景
- 怎么修改button切换选中状态的时候背景出现一个小蓝点的问题
- 怎么修改button切换选中状态的时候背景出现一个小蓝点的问题
- setbackgrounddrawable过时的代替方法
- 关于切换自定义组件(Button,CheckBox,EditText)被点击或选中时背景的方法
- Button设置弧度背景的方法
- 【android】[美化][selector] [state list] button 的背景切换
- 一个解决背景切换的shader
- iOS中点击button切换背景图片与点击切换背景颜色问题的解释
- 使用getBackground().setAlpha,导致其他布局背景透明度都改变的问题
- 使用getBackground().setAlpha,导致其他布局背景透明度都改变的问题
- 使用getBackground().setAlpha,导致其他布局背景透明度都改变的问题
- 使用getBackground().setAlpha,导致其他布局背景透明度都改变的问题
- getBackground().setAlpha导致其他布局背景透明度都改变的问题
- 使用getBackground().setAlpha,导致其他布局背景透明度都改变的问题
- Button点击背景和字体颜色改变的实现方法
- 类的再生
- Lucene学习(一):全文检索的基本原理
- 将iframe设置为可编辑状态
- 让后台服务不被杀———电话录音
- 【详解】Python脚本转可执行文件
- 一个切换button背景的方法:getBackground(),setBackgroundDrawable
- UART0串口编程系列 串口(UART0)之UC/OS(一)
- 百度地图API 自定义标注图标
- Fragment切换时不会重复创建使数据多次加载即重复实例化
- Android 实现MD5加密
- MoPub sdk集成
- PHP中设置时区方法小结
- UART0串口编程系列 串口(UART0)之UC/OS(二)
- hadoop的编程实例