• Android Button 的单击事件的三种响应方法


    转载(http://blog.csdn.net/hopease/article/details/7293244

    Android(SDK 1.5) Button 的单击事件的三种响应方法( 个人比较推荐第三种):

    第一种:个人认为写法不好,不容易看懂。

    1. package leo.zheng.ButtonClick;  
    2.   
    3. import android.app.Activity;  
    4. import android.os.Bundle;  
    5.   
    6. import android.graphics.Color;  
    7. import android.widget.Button;  
    8.   
    9. import android.widget.TextView;  
    10. import android.view.View;  
    11. import android.view.View.OnClickListener;  
    12.   
    13. import android.util.Log;  
    14.   
    15. public class ButtonClick extends Activity {  
    16.     /** Called when the activity is first created. */  
    17.     @Override  
    18.     public void onCreate(Bundle savedInstanceState) {  
    19.         super.onCreate(savedInstanceState);  
    20.         setContentView(R.layout.main);  
    21.           
    22.         final TextView Text = (TextView)findViewById(R.id.ColorView);  
    23.         final Button redButton = (Button)findViewById(R.id.Button01);  
    24.         final Button greenButton = (Button)findViewById(R.id.Button02);  
    25.           
    26.         redButton.setOnClickListener(  
    27.             new OnClickListener()  
    28.             {  
    29.                 public void onClick(View v)  
    30.                 {  
    31.                     Text.setBackgroundColor(Color.RED);  
    32.                     Log.v("Button click""red");  
    33.                 }  
    34.             }  
    35.         );  
    36.           
    37.         greenButton.setOnClickListener(  
    38.             new OnClickListener()  
    39.             {  
    40.                 public void onClick(View v)  
    41.                 {  
    42.                     Text.setBackgroundColor(Color.GREEN);  
    43.                     Log.v("Button click","green");  
    44.                 }  
    45.             }  
    46.         );  
    47.     }  
    48. }  


     

    第二种:Activity implements OnClickListener

    1. package leo.zheng.ButtonClick2;  
    2.   
    3. import android.app.Activity;  
    4. import android.os.Bundle;  
    5.   
    6. import android.view.View;  
    7. import android.view.View.OnClickListener;  
    8.   
    9. import android.util.Log;  
    10.   
    11. import android.widget.TextView;  
    12. import android.widget.Button;  
    13.   
    14. public class ButtonClick2 extends Activity implements OnClickListener {  
    15.     /** Called when the activity is first created. */  
    16.     private TextView textChange;  
    17.     private Button button1;  
    18.     private Button button2;  
    19.       
    20.     @Override  
    21.     public void onCreate(Bundle savedInstanceState) {  
    22.         super.onCreate(savedInstanceState);  
    23.         setContentView(R.layout.main);  
    24.           
    25.         textChange = (TextView)findViewById(R.id.TextView01);  
    26.         button1 = (Button)findViewById(R.id.Button01);  
    27.         button1.setOnClickListener(this);  
    28.         button2 = (Button)findViewById(R.id.Button02);  
    29.         button2.setOnClickListener(this);  
    30.     }  
    31.       
    32.     public void onClick(View v)  
    33.     {  
    34.         Log.v("Click""Button id = " + v.getId());  
    35.         switch(v.getId())  
    36.         {  
    37.         case R.id.Button01:  
    38.             textChange.setText("Ok");  
    39.             break;  
    40.         case R.id.Button02:  
    41.             textChange.setText("Cancal");  
    42.             break;  
    43.         default:  
    44.             break;  
    45.         }  
    46.     }  
    47. }  


     

    第三种:个人比较推荐。

    1. package leo.zheng.ButtonClick3;  
    2.   
    3. import android.app.Activity;  
    4. import android.graphics.Color;  
    5. import android.os.Bundle;  
    6.   
    7. import android.util.Log;  
    8.   
    9. import android.widget.Button;  
    10. import android.widget.TextView;  
    11.   
    12. import android.view.View;  
    13. import android.view.View.OnClickListener;  
    14.   
    15. public class ButtonClick3 extends Activity {  
    16.     /** Called when the activity is first created. */  
    17.     private Button button1;  
    18.     private Button button2;  
    19.     private TextView colorShow;  
    20.       
    21.     private button1_OnClickListener listener1 = new button1_OnClickListener();  
    22.     private button2_OnClickListener listener2 = new button2_OnClickListener();  
    23.       
    24.     @Override  
    25.     public void onCreate(Bundle savedInstanceState) {  
    26.         super.onCreate(savedInstanceState);  
    27.         setContentView(R.layout.main);  
    28.           
    29.         button1 = (Button) findViewById(R.id.Button01);  
    30.         button2 = (Button) findViewById(R.id.Button02);  
    31.         colorShow = (TextView) findViewById(R.id.TextView01);  
    32.           
    33.         button1.setOnClickListener(listener1);  
    34.         button2.setOnClickListener(listener2);  
    35.     }  
    36.       
    37.     class button1_OnClickListener implements OnClickListener  
    38.     {  
    39.         public void onClick(View v)  
    40.         {  
    41.             Log.v("Click""Button GREEN");  
    42.             colorShow.setBackgroundColor(Color.GREEN);  
    43.         }  
    44.     }  
    45.       
    46.     class button2_OnClickListener implements OnClickListener  
    47.     {  
    48.         public void onClick(View v)  
    49.         {  
    50.             Log.v("Click""Button BLUE");  
    51.             colorShow.setBackgroundColor(Color.BLUE);  
    52.         }  
    53.     }  
    54. }  
  • 相关阅读:
    table的边框样式(小技巧)
    当人有更高目标追求的话,会发现周围的利益之争很可笑
    科普连载(原著:幽灵蝶)
    关于ASP.NET中的负载均衡
    验证控件与Button的OnClientClick事件(转)
    SQL Server 索引基础知识(2)聚集索引,非聚集索引(转)
    js中的Number和parseInt(小技巧)
    google的一些域名
    对多维宇宙的理解(时间、空间、超越光速,空间时间旅行)
    SNS
  • 原文地址:https://www.cnblogs.com/malaya/p/2457127.html
Copyright © 2020-2023  润新知