2016-03-24 43 views
-1

我想添加一個ShowSolution按鈕的條件。當您按下我的AnswerCheck方法的提交按鈕時,只有當您可以按下顯示解決方案按鈕時。有沒有辦法做到這一點?請欣賞幫助,謝謝。按鈕條件

public void AnswerCheck2(View view) { 

     EditText num2 = (EditText) findViewById(R.id.answertext2); 
     int val2 = Integer.parseInt(num2.getText().toString()); 


     area = number3 * number3; 

     if (val2 == area) { 
      Toast.makeText(this, "The answer is correct", Toast.LENGTH_SHORT).show(); 

     } else { 

      Toast.makeText(this, "The answer is incorrect ", Toast.LENGTH_SHORT).show(); 
     } 

    } 

    public void ShowSolution2(View view){ 
     ((TextView) findViewById(R.id.solution2)).setText 
       ("The Solution is "+number3 + " * " +number3); 

     ((TextView) findViewById(R.id.answer2)).setText("The answer is "+area); 
    } 


} 
+0

請清楚地解釋你的問題。 –

+0

這個人必須在EditText中輸入他們的答案,然後他們會按提交來查看他們的答案是否正確,如果他們的答案不正確,有一個Show Solution按鈕可以讓他們看到解決方案並回答,他們可以按下甚至沒有輸入一個不是我想要發生的答案的解決方案。如何限制用戶在輸入答案前按下ShowSolution按鈕? – TheOptimist

+0

您可以先禁用ShowSolution按鈕,然後使用AnswerCheck2方法啓用它。 –

回答

0

如果我正確理解你的問題,有多種方法可以啓用/根據條件顯示一個按鈕,如:

  • button.setEnabled(true)
  • button.setVisibility(VISIBLE)

哪裏button是您從findViewById(id)撥打的按鈕。

當然這也意味着您的按鈕被禁用或隱藏以前,但很難提供指導,沒有進一步的解釋。

+0

你如何實現button.setEnabled(true)函數? – TheOptimist

+0

你可以用'android:enabled = false'在佈局的XML中禁用你的按鈕,然後在你的真實條件下調用'findViewById(R.id。** your_button_id **)。setEnabled(true)'。 – Engraver

+0

謝謝,它的工作原理,我想爲提交按鈕顯示一個彈出框,說「提交之前輸入答案」,如果有人在EditText輸入答案之前嘗試提交 – TheOptimist

0

從我的理解,你首先要用戶提交他們的答案,然後才提交他們的答案,要顯示解決方案按鈕。

然後,在這種情況下,使用這樣的: -

最初在onCreate方法: - solutionbutton.setvisibility(假)

然後在answercheck2: - Solutionbutton.setvisibility.setvisibility(真) NUM2。 setfocusable(false)

這樣你也可以控制用戶從那裏改變回答以後