【Android开发】解决不同的OnClickListener冲突的问题

今天在做一个Activity的时候,遇到了不同类型的OnClickListener的问题,具体阐述如下

1.实现了一个弹出的Dialog的按钮事件

2.又同时添加一般的Button的监听器

//一个Dialog的按钮事件

private AlertDialog.Builder setPositiveButton(AlertDialog.Builder builder)
	{
		return builder.setPositiveButton("确定", new OnClickListener()
		{

			@Override
			public void onClick(DialogInterface arg0, int arg1) {
				// TODO Auto-generated method stub
			}
			
		}
		);
	}

//同时存在一个一般的button的监听器

private class TestClickListener implements OnClickListener {

		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			
			
		}

	
	}


然后Eclipse就一直处于红色波浪线报错的状态当中。分析了一下,觉得是两者是应用不同的包的onClickListener,但是这里若在import里面添加了谁的包,其中一者都会报错

意思即是:

android.view.View.OnClickListener

android.content.DialogInterface.OnClickListener

两个包冲突了。

解决方法:

1.在import里面都不引入上面两者

2.在声明的地方做改变

//一个Dialog的按钮事件

private AlertDialog.Builder setPositiveButton(AlertDialog.Builder builder)
	{
		return builder.setPositiveButton("确定", new android.content.DialogInterface.OnClickListener()
		{

			@Override
			public void onClick(DialogInterface arg0, int arg1) {
				// TODO Auto-generated method stub
			}
			
		}
		);
	}

//同时存在一个一般的button的监听器

private class QunachiClickListener implements android.view.View.OnClickListener {

		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			
			
		}

	
	}


即是OnClickListener中要把全部路径都写上,让系统能分辨出究竟是哪个OnClickListener

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值