按钮和布刷文件分别设置事件监听即可。
MyOnClickListener listener = new MyOnClickListener();
button1.setOnClickListener(listener);button2.setOnClickListener(listener);button3.setOnClickListener(listener);layout.setOnClickListener(listener);
class MyOnClickListener implements OnClickListener {
@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.button1:// button1事件处理break;case R.id.button2:// button2事件处理break;case R.id.button3:// button3事件处理break;case R.id.layout:// 整个布局事件处理break;default:// 或者不需要上面的case R.id.layout:直接将整个布局事件处理写在这里break;}
}}
你这个就是防止事件冒泡了,用jquery的event.stopPropagation();很容易实现
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script src="jquery-latest.min.js"></script><script language="javascript">$(document).ready(function(e) {$("#parent").click(function(){alert("this is parent");});$("#son_1").click(function(event){alert("this is son_1");event.stopPropagation();})$("#son_2").click(function(event){alert("this is son_2");event.stopPropagation();})$("#son_3").click(function(event){alert("this is son_3");event.stopPropagation();});});</script></head>
<body><div id="parent" style="border:1px solid #ff0000; width:200px; height:100px;"><input type="button" id="son_1" value="son_1" /><input type="button" id="son_2" value="son_2" /><input type="button" id="son_3" value="son_3" /></div></body></html>
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(2)
按钮和布刷文件分别设置事件监听即可。
MyOnClickListener listener = new MyOnClickListener();
button1.setOnClickListener(listener);
button2.setOnClickListener(listener);
button3.setOnClickListener(listener);
layout.setOnClickListener(listener);
class MyOnClickListener implements OnClickListener {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
// button1事件处理
break;
case R.id.button2:
// button2事件处理
break;
case R.id.button3:
// button3事件处理
break;
case R.id.layout:
// 整个布局事件处理
break;
default:
// 或者不需要上面的case R.id.layout:直接将整个布局事件处理写在这里
break;
}
}
}
你这个就是防止事件冒泡了,用jquery的event.stopPropagation();很容易实现
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="jquery-latest.min.js"></script>
<script language="javascript">
$(document).ready(function(e) {
$("#parent").click(function(){
alert("this is parent");
});
$("#son_1").click(function(event){
alert("this is son_1");
event.stopPropagation();
})
$("#son_2").click(function(event){
alert("this is son_2");
event.stopPropagation();
})
$("#son_3").click(function(event){
alert("this is son_3");
event.stopPropagation();
});
});
</script>
</head>
<body>
<div id="parent" style="border:1px solid #ff0000; width:200px; height:100px;">
<input type="button" id="son_1" value="son_1" />
<input type="button" id="son_2" value="son_2" />
<input type="button" id="son_3" value="son_3" />
</div>
</body>
</html>