按鈕監聽事件的實現方式


一:事件處理機制要通過以下三個不同對象來實現:

(1)事件源:事件發生的場所,通常為產生事件的組件。

(2)事件對象:封裝在組件上發生的特定事件。

(3)事件監聽對象:負責監聽事件源發生的事件,並對事件做出相應的處理。

二:

1.匿名內部類;

2.匿名外部類;

3.實現接口;

 

代碼如下:

public class MainActivity extends Activity implements OnClickListener{  
  
    private Button loginButton;  
    private ImageButton imagBt;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
        loginButton = (Button)findViewById(R.id.button1);  
        imagBt= (ImageButton) findViewById(R.id.imageButton1);  
        /*loginButton.setOnClickListener(new OnClickListener() {//第一種 
             
            @Override 
            public void onClick(View v) { 
                System.out.println("我的Button被點了"); 
                 
            } 
        });*/  
        loginButton.setOnClickListener(new MyOnClickListener(){//第二種  
            @Override  
            public void onClick(View v) {  
                // TODO Auto-generated method stub  
                super.onClick(v);  
                Toast.makeText(MainActivity.this, "loginButton要執行的羅輯", 1).show();  
            }  
        });  
        imagBt.setOnClickListener(this);  
    }  
    @Override  
    public void onClick(View v) {//第三種  
        Log.i("tag", "第三種方式實現");  
    }  
}  
  
class MyOnClickListener implements OnClickListener  
{  
  
    @Override  
    public void onClick(View v) {  
        v.setAlpha(0.5f);  
    }  
      
}  

注:在程序中要想實現事件處理機制必須定義一個類來實現事件監聽器的接口,然后再通過特定的方法給組件注冊事件監聽器。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM