2016-09-14 90 views
0
public void showDialog(Activity activity) { 
     final CharSequence[] items = {" No timer ", " 1 minute ", " 3 minute ", " 5 minute ", "10 minute"}; 

// Creating and Building the Dialog 
     AlertDialog.Builder builder = new AlertDialog.Builder(AutumnForest.this); 
     builder.setTitle("Set timer duration"); 
     builder.setSingleChoiceItems(items, selection, new DialogInterface.OnClickListener() { 
      public void onClick(final DialogInterface dialog, int item) { 
       switch (item) { 
        case 0: 
         if (isRunning) { 
          count_down_timer.cancel(); 
          _tv.setVisibility(View.INVISIBLE); 
          gong_imageview.setVisibility(View.INVISIBLE); 
          timer_imageview.setImageResource(R.drawable.time_icon); 
         } 
         dialog.dismiss(); 
         break; 
        case 1: 
         // if timer is running somewhere 
         if (!isRunning) { 
          isRunning = true; 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } else { 
          count_down_timer.cancel(); 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } 
         break; 

        case 2: 
         if (!isRunning) { 
          isRunning = true; 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } else { 
          count_down_timer.cancel(); 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } 
         break; 
        case 3: 
         if (!isRunning) { 
          isRunning = true; 
          countDownTimer(item); 
         } else { 
          count_down_timer.cancel(); 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } 
         break; 
        case 4: 
         if (!isRunning) { 
          isRunning = true; 
          countDownTimer(item); 
         } else { 
          count_down_timer.cancel(); 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } 
         break; 
        case 5:      
         if (!isRunning) { 
          isRunning = true; 
          countDownTimer(item); 
         } else { 
          count_down_timer.cancel(); 
          countDownTimer(item); 
          levelDialog.dismiss(); 
         } 
         break; 
        default: 
         Toast.makeText(AutumnForest.this, "Something went wrong please try again", Toast.LENGTH_SHORT).show(); 
       } 
     } 
     }); 
     levelDialog = builder.create(); 
     levelDialog.show(); 
    } 

代碼運行良好,但當點擊發生時,它停留在情況1而不是點擊項目。 我想,如果我點擊案件3或4的東西,它應該是setchecked = true和其他setchecked = false,但它沒有顯示。setSelectedItemChoice選擇對話框中的一個項目而不是單擊項目android

here is the output which i am getting

這裏是我收到的輸出。

+0

什麼是'setSingleChoiceItems(項目,1,.....' – W4R10CK

+0

1初始檢查項目位置對話框打開的第一次1的情況下,將選擇默認情況下。 –

回答

0

嘗試使用:

switch (item) { 
     case item[0]: 
     case item[1]: 
        ........... 
+0

當按3或5分鐘時跟蹤logcat並更新我可以幫助 – W4R10CK

+0

陣列自動計算多少項目在陣列中,並根據位置分配。在我的陣列中將會有像0,1,2,3 –

+0

這樣的位置,但至少追蹤logcat知道什麼是當你按3或5 – W4R10CK

相關問題