码迷,mamicode.com
首页 > 其他好文 > 详细

当有多个click事件时的简易做法

时间:2014-07-22 08:04:34      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   color   os   io   

让类实现接口OnClickListener

然后button.setOnClickListener(this);

之后重写onClick(View v)函数。

通过v.getId()得到是哪个view触发了click事件。然后分情况处理。如

 1 package com.example.linearlayout;
 2 
 3 import android.os.Bundle;
 4 import android.app.Activity;
 5 import android.view.Menu;
 6 import android.view.View;
 7 import android.view.View.OnClickListener;
 8 import android.widget.Button;
 9 
10 public class MainActivity extends Activity implements OnClickListener {
11     Button tl;
12     Button rl;
13     Button fl;
14     Button al;
15 
16     @Override
17     protected void onCreate(Bundle savedInstanceState) {
18         super.onCreate(savedInstanceState);
19         setContentView(R.layout.activity_main);
20         tl=(Button)findViewById(R.id.button1);
21         tl.setOnClickListener(this);
22         rl=(Button)findViewById(R.id.button2);
23         rl.setOnClickListener(this);
24         fl=(Button)findViewById(R.id.button3);
25         fl.setOnClickListener(this);
26         al=(Button)findViewById(R.id.button4);
27         al.setOnClickListener(this);
28     }
29 
30     @Override
31     public boolean onCreateOptionsMenu(Menu menu) {
32         // Inflate the menu; this adds items to the action bar if it is present.
33         getMenuInflater().inflate(R.menu.main, menu);
34         return true;
35     }
36 
37     @Override
38     public void onClick(View v) {
39         // TODO Auto-generated method stub
40         if(v.getId()==R.id.button1)
41         {
42             setContentView(R.layout.tablelayout);
43         }
44         if(v.getId()==R.id.button2)
45         {
46             setContentView(R.layout.relativelayout);
47         }
48         if(v.getId()==R.id.button3)
49         {
50             setContentView(R.layout.framelayout);
51         }
52         if(v.getId()==R.id.button4)
53         {
54             setContentView(R.layout.absolutelayout);
55         }
56     }
57 
58 }

上面40到50行中,有4个if语句,用来判断v是哪一个view。

其实可以通过switch(v.getId())来替换

当有多个click事件时的简易做法,布布扣,bubuko.com

当有多个click事件时的简易做法

标签:android   style   blog   color   os   io   

原文地址:http://www.cnblogs.com/lexious/p/3857589.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!