2011-12-15 55 views
0

我在之前的項目中做過一些onclick監聽器,但我從來沒有像100-200 onclicks那樣做過。這個想法是一個水平滾動,AddImagViews,如果一個變量是== somethin,如果你點擊imageview imageview將setText到一個TextView。OnClickListener許多視圖

我已經完成了設置imageview部分,但有沒有更簡單的方法,然後創建像每個imageview 100個不同的onclick。對不起,如果這是不好解釋和難以理解。

回答

0

您可以創建一個通用的onClick事件,它對傳遞給它的視圖做出反應。您可以使用決策語句(如if語句)來確定按鈕,但如果您只需要按鈕中的文本,則可以通過將視圖重新放入按鈕並獲取文本來獲得該屬性。

Button button = (Button)v; 
button.getText().toString(); 
+0

對不起,使用ImageView替換Button和東西應該正確行爲。 – Pyrodante 2011-12-15 19:08:30

1

當然,有你的活動implemenent OnClickListener是這樣的:

@Override 
    public void onClick(View v) { 
     switch (v.getId()){ 
     case R.id.splash_startScan: 
      // do something 
      break; 
     case R.id.splash_startReview: 
      // do something 
      break; 
     } 
    } 

然後爲每個按鈕做

button.setOnClickListener(this); 
0

可能是最好創建一個實現onClickListener並具有構造函數的類它傳遞你需要的東西,然後用正確的參數將偵聽器設置爲該對象的新實例。