2012-11-14 47 views
1

我有一個onClick聽衆,它使用意圖開始活動,但是如何讓偵聽器僅在用戶點擊五次或更多時觸發活動意圖?Android:在5次或更多次點擊之後開始活動

public boolean onClick(View v) { 

    Intent myIntent = new Intent(activity, loginActivity.class); 
    activity.startActivity(myIntent); 

    return false; 
} 

這裏我要登錄Activity。登錄成功後,如何恢復以前的活動?

public void onClick(View v) { 

    String username = Username.getText().toString(); 
    String password = Password.getText().toString(); 

    if(username.equals("guest") && password.equals("guest")) { 
     lResult.setText("Login successful."); 
    } else { 
     lResult.setText("Login failed"); 
    } 
} 
+1

謝謝All..working – teekib

回答

6

有一個靜態程序中的變量在每次點擊時都會增加。

當您點擊數達到5,然後觸發代碼啓動LoginActivity。

static int i = 0; 

@override 
public void onClick(View view) { 
    i++; 
    if (i == 5) { 
     i = 0; 
     Intent myIntent = new Intent(activity, loginActivity.class); 
     activity.startActivity(myIntent); 
    } 
} 
+0

是謝謝。 – teekib

+0

.hi..can我onlclick..problem放緩是...當我點擊3時間和幾秒停頓,再次打2次意圖是射擊...我只想當我點擊連續5次... – teekib

+0

什麼! ? inOnclick「i == 5」?沒有邏輯和愚蠢 – delive

1

你可以嘗試建立一個計數器,它計算點擊次數和從第5次點擊讓他往前走

回頭以前的活動就叫

finish(); 
+1

@ Festado..yeah thankyou..it wrked – teekib

1

爲您的活動添加一個靜態計數器。

static int clickCount; 

在你的onClick:

if(clickCount++<5){return;} 
+0

是的謝謝... – teekib

0

爲拳頭的問題只是在類的計數器變量,並增加在的onClick()和它> = 5開始的意圖之前檢查它。

int clickCounter; 

    public boolean onClick(View v) { 

      clickCounter++; 

      if (clickCounter >= 5) { 

        Intent myIntent = new Intent(activity, loginActivity.class); 
        activity.startActivity(myIntent); 
      } 

      return false; 
    } 

因爲你必須考慮到以前的活動是否必須保持完全相同的方面或更新用戶數據的第二個問題。查看Activity.startActivityForResult(Intent intent,int requestCode)來調用一個活動並從中獲取一個結果值。 -

+0

..謝謝..第二個活動不需要獲取任何數據..簡單地說它應該回到以前的活動.. – teekib

相關問題