2015-09-28 20 views
1

我需要一個按鈕統計點擊次數,並顯示在舉杯,當我嘗試了Android VM採取循環顯示怎麼算,單擊並吐司

final Button button= (Button) findViewById(R.id.button1); 
    button.setOnClickListener(new View.OnClickListener() { 
     int contadorClicks =0; 
     public void onClick(View v) { 
      //definir accion 

      contadorClicks ++ ; 

      Toast.makeText(getApplicationContext(), contadorClicks, Toast.LENGTH_LONG).show(); 
     } 
    }); 
+0

「循環」是什麼意思? – nasch

+0

使用'String.valueOf(contadorClicks)'作爲makeText方法中的第二個參數 –

+0

嘗試'static int contadorClicks' – ThanhLD

回答

0

嘗試: 創建INT contadorClicks = 0;在課堂上,即活動或片段 領域裏面,然後使用方法

final Button button= (Button) findViewById(R.id.button1); 
button.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     //definir accion 
     contadorClicks ++ ; 
     Toast.makeText(getApplicationContext(), String.valueOf(contadorClicks), Toast.LENGTH_LONG).show(); 
    } 
}); 

,或者你可以這樣做:

final Button button = (Button) findViewById(R.id.button1); 
button.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      //definir accion 
      Integer contadorClicks; 
      if (v.getTag() == null) { 
       contadorClicks = 0; 
      } else { 
       contadorClicks = (Integer) v.getTag(); 
      } 
      contadorClicks++; 
      v.setTag(contadorClicks); 

      Toast.makeText(getApplicationContext(), String.valueOf(contadorClicks), Toast.LENGTH_LONG).show(); 
     } 
    }); 
0

你需要定義你要遞增setOnClickListener之外的變量方法。另外,正如我之前建議的那樣,使用String.valueOf(contadorClicks)來獲取int的String遏制。

int contadorClicks = 0;  

final Button button = (Button) findViewById(R.id.button1); 
button.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View v) { 
     //definir accion 

     contadorClicks++; 

     Toast.makeText(getApplicationContext(), String.valueOf(contadorClicks), Toast.LENGTH_LONG).show(); 
    } 
}); 
0

發生什麼事情是因爲它是每次單擊按鈕時創建的,因此它的變量contadorClicks總是爲0。你需要做的是將該變量放在onClickListener之外。希望這可以幫助

int contadorClicks = 0; 
final Button button= (Button) findViewById(R.id.button1); 
    button.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      //definir accion 

      contadorClicks ++ ; 

      Toast.makeText(getApplicationContext(), contadorClicks, Toast.LENGTH_LONG).show(); 
     } 
    });