zoukankan      html  css  js  c++  java
  • Android Button 单击事件

    方法一:在XML文件中指定 单击事件函数

    <Button
                android:id="@+id/button1"
                android:layout_width="120dip"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_below="@+id/textView1"
                android:layout_marginTop="59dp"
                android:onClick="onclicklistener"
                android:text="@string/mybuttonstr" />

    然后在代码中实现这个函数。注意,函数需要public 要不会异常。

     public void onclicklistener(View tager)
        {
              TextView textView1 =(TextView)findViewById(R.id.textView1);
        textView1.setText("西安.王磊");
        }

     

    方法二:

    在activity 的onCreate 中 找到button,然后给它赋上事件监听器。这个方式非常普遍。

     public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            Button but=(Button)this.findViewById(id.button1);
            
            
            but.setOnClickListener(new OnClickListener() {
                
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Log.v("MyTag", "onClick");
                }
            });
        }

     

    方法三:

    这个方法其实是方法二的变种。就是提前定义一个OnClickListener 的handler,然后可以将这个activity中所有的button多使用这个handler,通过判断不同id来进行不同的逻辑。这个方式适合比较多的button的情况使用。

    public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            
            View.OnClickListener handler=new OnClickListener(){

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    switch (v.getId()){
                    case id.button1:
                        Log.v("MyTag", "Button1 OnClick");
                        break;
                    case id.button2:
                        Log.v("MyTag", "Button2 OnClick");
                        break;
                    }
                    
                }
                
            };
            
            Button btn1=(Button)this.findViewById(id.button1);
            Button btn2=(Button)this.findViewById(id.button2);
            
            btn1.setOnClickListener(handler);
            btn2.setOnClickListener(handler);

    }

  • 相关阅读:
    要给自己留时间思考
    联表更新 Update Left Join
    SQLServer2014内存优化表评测
    SQL Server中数据库文件的存放方式,文件和文件组
    {好文备份}SQL索引一步到位
    qt调用js,js调用qt
    【转】vs2010打开qt的.pro文件时错误解决办法
    qt多线程信号槽传输方式
    【转】设置Qt应用程序图标及应用程序名
    【转】Qt多线程操作界面---在QThread更新QProgressBar
  • 原文地址:https://www.cnblogs.com/vipstone/p/2806655.html
Copyright © 2011-2022 走看看