button设置点击更改背景图片

こ雲淡風輕ζ 提交于 2019-12-06 04:43:37

给button设置背景图片很简单,设置点击时的背景也简单,做一个selector选择器就好了。当我想在点击时和松开后背景不再改变回去时遇到了麻烦,无论怎么设置selector都不起作用。无奈上网求救,遇一好心人解答,感谢他,现将解决方法记录下来。

第一种方法:给按钮添加监听事件,并做标志。这个貌似要在xml文件给按钮加上背景。

button.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				if(btstate==0){
//					button.setBackgroundColor(0xff000000);  //改变背景色
					button.setBackgroundResource(R.drawable.radio_btn); //改变背景图片
					btstate=1;
				}else if (btstate==1) {
//					button.setBackgroundColor(0xff2bb8aa);
					button.setBackgroundResource(R.drawable.radio_btn_none);
					btstate=0;
				}
			}
		});
第二种方法:用checkbox xml文件中给设置android:button="@null",不显示方框+对号。监听事件

 button2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){ 
                     @Override
                     public void onCheckedChanged(CompoundButton buttonView, 
                             boolean isChecked) { 
                         // TODO Auto-generated method stub 
                    	 if(isChecked){ 
              				} else {
              				}
                     } 
                 }); 

我在使用的时候用的第一种方法,点击按钮出现一个popupwindow,再点击消失,给popupwindow加上了消失的监听事件

pwMyPopWindow.setOnDismissListener(new OnDismissListener() { 
				
				@Override
				public void onDismiss() {
					button.setBackgroundResource(R.drawable.radio_btn_none);
					btstate=0;
				}
			});


总之就是这样,在好心人帮助下又学到了新知识。


代码下载

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!