2016-09-22 8 views
2

私は if文で文字列に作った編集可能を持っています。指定された文字列が9文字未満の場合にのみif文を適用する方法はありますか?以下を参照してください:私は持っている文字列の最小長をどのように設定するのですか?

boolean answerSixを文字列に設定しましたが、指定されたフィールドにテキストがない場合のみ適用されます。文字列が9文字未満の場合は適用します。ご不明な点がございましたらお知らせください。私はすべての助けに感謝します。ここで

は私のコードです:

package com.example.android.quantummechanicsquiz; 

    import android.provider.MediaStore; 
    import android.support.v7.app.AppCompatActivity; 
    import android.os.Bundle; 
    import android.text.Editable; 
    import android.view.View; 
    import android.widget.CheckBox; 
    import android.widget.EditText; 
    import android.widget.RadioButton; 
    import android.widget.TextView; 
    import android.widget.Toast; 

    public class MainActivity extends AppCompatActivity { 

     int score = 0; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
      score = 0; 
     } 


     public void radioButtonClicked(View view) { 
      boolean checked = ((RadioButton) view).isChecked(); 

      switch (view.getId()) { 
       case R.id.radio_one_correct: 
        if (checked) break; 

       case R.id.radio_one_b: 
        if (checked) break; 

       case R.id.radio_one_c: 
        if (checked) break; 

       case R.id.radio_one_d: 
        if (checked) break; 

       case R.id.radio_two_a: 
        if (checked) break; 

       case R.id.radio_two_b: 
        if (checked) break; 

       case R.id.radio_two_correct: 
        if (checked) break; 

       case R.id.radio_two_d: 
        if (checked) break; 

       case R.id.radio_four_a: 
        if (checked) break; 

       case R.id.radio_four_b: 
        if (checked) break; 

       case R.id.radio_four_correct: 
        if (checked) break; 

       case R.id.radio_four_d: 
        if (checked) break; 

       case R.id.radio_five_a: 
        if (checked) break; 

       case R.id.radio_five_b: 
        if (checked) break; 

       case R.id.radio_five_c: 
        if (checked) break; 

       case R.id.radio_five_correct: 
        if (checked) break; 


      } 

     } 


     private int calculateScore(boolean answerOne, boolean answerTwo, boolean answerThreeA, 
            boolean answerThreeB, boolean answerThreeC, boolean answerThreeD, 
            boolean answerFour, boolean answerFive, Editable answerSix) { 
      score = 0; 

      if (answerOne) { 

       score = score + 100/6; 


      } else { 


      } 

      if (answerTwo) { 

       score = score + 100/6; 

      } else { 


      } 


      if (answerThreeA || answerThreeD) { 



      } else if (answerThreeB && answerThreeC){ 

       score = score + 100/6; 
      } 


      if (answerFour) { 

       score = score + 100/6; 

      } else { 


      } 

      if (answerFive) { 

       score = score + 100/6; 

      } else { 


      } 


      if (answerSix.toString().equals("")) { 


      } else { 

       score = score + 20; 

      } 

      return score; 

     } 


     public void submitScore(View view) { 
      RadioButton answerOne = (RadioButton) findViewById(R.id.radio_one_correct); 
      boolean correctAnswerOne = answerOne.isChecked(); 

      RadioButton answerTwo = (RadioButton) findViewById(R.id.radio_two_correct); 
      boolean correctAnswerTwo = answerTwo.isChecked(); 

      CheckBox answerThreeA = (CheckBox) findViewById(R.id.checkbox_three_a); 
      boolean incorrectAnswerThreeA = answerThreeA.isChecked(); 

      CheckBox answerThreeB = (CheckBox) findViewById(R.id.checkbox_three_b_correct); 
      boolean correctAnswerThreeB = answerThreeB.isChecked(); 

      CheckBox answerThreeC = (CheckBox) findViewById(R.id.checkbox_three_c_correct); 
      boolean correctAnswerThreeC = answerThreeC.isChecked(); 

      CheckBox answerThreeD = (CheckBox) findViewById(R.id.checkbox_three_d); 
      boolean incorrectAnswerThreeD = answerThreeD.isChecked(); 

      RadioButton answerFour = (RadioButton) findViewById(R.id.radio_four_correct); 
      boolean correctAnswerFour = answerFour.isChecked(); 

      RadioButton answerFive = (RadioButton) findViewById(R.id.radio_five_correct); 
      boolean correctAnswerFive = answerFive.isChecked(); 

      EditText answerSix = (EditText) findViewById(R.id.question_six_edit_text); 
      Editable correctAnswerSix = answerSix.getEditableText(); 

      int finalScore = calculateScore(correctAnswerOne, correctAnswerTwo, 
        incorrectAnswerThreeA, correctAnswerThreeB, correctAnswerThreeC, 
        incorrectAnswerThreeD, correctAnswerFour, correctAnswerFive, correctAnswerSix); 

      Toast.makeText(this, "Congratulations! You have a score of " + finalScore + " out of " + 
        "100", Toast.LENGTH_LONG).show(); 

    } 

} 
+0

変数名が数値で異なる場合は、リストまたは配列を使用する必要があります。 –

答えて

3

は、あなただけの次の手順を実行することはできますか?

if (answerSix.toString().length()<9) { 
関連する問題