0

私はifelseステートメントのこのコードを持っています

@Override
        public void onClick(View arg0) {
            int aInt = Integer.parseInt(textView1.getText().toString());
             if(aInt <= 0) {
                 Toast.makeText(getApplicationContext(), "Wrong",
                            Toast.LENGTH_SHORT).show();
                } else{

                 int a=Integer.parseInt(textView1.getText().toString());
                     int  b=a-2;
                  String s1 = String.valueOf(b);
                 textView1.setText(s1);
                 Toast.makeText(getApplicationContext(), "Wrong",
                            Toast.LENGTH_SHORT).show();
                int c =Integer.parseInt(textView5.getText().toString());
                        int d = c-1;
                        String s2 = String.valueOf(d);
                        textView5.setText(s2);

                }  if(textView5 != null) {
                    int dInt = Integer.parseInt(textView5.getText().toString());
                        if(dInt <= 0);
                     Toast.makeText(getApplicationContext(), "Game Over",
                                Toast.LENGTH_SHORT).show();
                            Intent intent = new Intent();
                        intent.setClass(MainActivity.this, Fifth.class);
                        startActivity(intent);

                    SavePreferences("MEM1", textView1.getText().toString());
                }
        }

};

コードのこの部分で、textView5の値が0の場合にインテントを開始したいのですが、textView5の値がまだ0でなくても、新しいインテントに移動します。コードのどの部分が間違っているのかわかりません。

}  if(textView5 != null) {
                int dInt = Integer.parseInt(textView5.getText().toString());
                    if(dInt <= 0);
                 Toast.makeText(getApplicationContext(), "Game Over",
                            Toast.LENGTH_SHORT).show();
                        Intent intent = new Intent();
                    intent.setClass(MainActivity.this, Fifth.class);
                    startActivity(intent);
 }
4

5 に答える 5

0
if(textView5 != null)
{
      int dInt = Integer.parseInt(textView5.getText().toString());
      if(dInt <= 0)
                {
                     Toast.makeText(getApplicationContext(), "Game Over",Toast.LENGTH_SHORT).show();
                    startActivity(new Intent(MainActivity.this, Fifth.class));
                }
     }
于 2013-02-18T10:24:34.127 に答える
0

このようにしてください:

}  if(textView5 != null) {
            int dInt = Integer.parseInt(textView5.getText().toString());
                if(dInt <= 0) {
             Toast.makeText(getApplicationContext(), "Game Over",
                        Toast.LENGTH_SHORT).show();
                    Intent intent = new Intent();
                intent.setClass(MainActivity.this, Fifth.class);
                startActivity(intent);
              }
}
于 2013-02-18T10:24:49.700 に答える
0

ステートメント(textView5!= null)は、ビューがnullでないかどうかをチェックします。のようなコードを追加編集する必要があります。

                   if(!textView5.getText().toString().equals("")) {
            int dInt = Integer.parseInt(textView5.getText().toString());
                if(dInt <= 0);
             Toast.makeText(getApplicationContext(), "Game Over",
                        Toast.LENGTH_SHORT).show();
                    Intent intent = new Intent();
                intent.setClass(MainActivity.this, Fifth.class);
                startActivity(intent);
                }
于 2013-02-18T10:26:27.707 に答える
0

これを試してください:このようなセミコロンのないループの場合

  if(dInt <= 0){
         Toast.makeText(getApplicationContext(), "Game Over",
                    Toast.LENGTH_SHORT).show();
                Intent intent = new Intent();
            intent.setClass(MainActivity.this, Fifth.class);
            startActivity(intent);
            }
于 2013-02-18T10:27:44.467 に答える
-1

;文字列の終わりです。;If条件の最後に指定すると、本体は実行されません。

削除してコードを確認してください。

if(dInt <= 0)
   Toast.makeText(getApplicationContext(), "Game Over",Toast.LENGTH_SHORT).show();
   Intent intent = new Intent();
   ......
于 2013-02-18T10:26:09.350 に答える