2016-10-20 7 views
-1

私は現在Android Studioの学校プロジェクトに取り組んでいますが、これまではランダムな方程式を生成するコードを書いています。 ここでは、2つの方程式を画面に表示し、ユーザーは第2式が最初の式よりも大きいか小さいかを判断する必要があります。第2のものが大きい場合、ユーザは「より大きい」ボタンを押し、第2のものがより小さい場合、ユーザは「より小さい」ボタンを押す。 今私は、ユーザーが正しく押すと、新しい方程式を生成し、彼が間違っていれば、プロセスが停止するというコードを書こうとしています。 そうのような文ならば、私は考えていた:複数のif文(ボタン付き)にarraylistを使用

final ArrayList<String> arrayListCheck = new ArrayList<String>(); 

    if(doubleAnswer1 > doubleAnswer2){ 
     arrayListCheck.add("smaller"); 
    } else { 
     arrayListCheck.add("bigger"); 
    } 

    final Button buttonBigger = (Button)findViewById(R.id.button_bigger); 
    final Button buttonSmaller = (Button)findViewById(R.id.button_smaller); 

    View.OnClickListener listener = new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      if(v.equals(buttonBigger)){ 
       arrayListCheck.add("bigger"); 
      } else { 
       arrayListCheck.add("smaller"); 
      } 
     } 
    }; 

    buttonBigger.setOnClickListener(listener); 
    buttonSmaller.setOnClickListener(listener); 

のArrayListには、いずれかの「大きな」または「小さい」が格納されますarrayListCheck。今度は、新しい方程式が生成されるならば、arraylistの要素が両方とも同じか(より大きいか小さいか)をチェックしたいと思います。 arraylistの要素が異なる場合(両方が同じでない場合)、プロセスは停止されます。 それは本当にうまくいくかどうか分かりません。

私の質問では不明な点がある場合は、お気軽に、私は、問題を明確にしようとします:)

あなたの助けを事前にすでにありがとうございます!

答えて

0

私はそのためにArrayListを使用しません。私は次の操作を行います

View.OnClickListener listener = new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     if(v.equals(buttonBigger) && doubleAnswer1 < doubleAnswer2) { 
      Log.v("TAG", "you are right"); 
     } else if(v.equals(buttonSmaller) && doubleAnswer1 > doubleAnswer2) { 
      Log.v("TAG", "you are right"); 
     } else { 
      Log.v("TAG", "you are wrong"); 
     } 
    } 
}; 

配列は、単純な比較のこの種のは本当に必要ありませんです。

+0

これはgoogの解決策のようですが、私が試してみると、私が100%正しかったとしても、私は常にlogcatであなたが間違っています... – zutru

+0

*良い(私の前のコメントを編集できませんxD) – zutru

+0

次に、アプリケーションをデバッグし、v.equals(buttonBigger)またはv.equals(buttonSmaller)またはdoubleAnswer1