画面右側は問題、操作画面(上下左右)、左側でねこが動きます。操作ボタン(button1…うえ、button2…した、button3…ひだり、button4…みぎ)を押したら猫が移動するアニメーションをつけました。障害物である犬の位置に到達すると初期位置に戻るためのダイアログが発生します。また、猫の位置を管理するために変数xと変数yを使用しています。
実現したいことは、ねこが←←↑↑↑→→や↑←←↑↑→→や←↑←↑↑→→など…と進み家の位置へ到達した場合「せいかい!」というダイアログ表示をすることです。以下のコードではエラーメッセージはでませんが、ダイアログも表示されません。if (x == -2 && y == -3 && x ==2)という複数の論理演算に問題があるのだと思うのですが、解決に至りませんでした。
java
1 button1.setOnClickListener(new View.OnClickListener() { 2 @Override 3 public void onClick(View v) { 4 // 「うえ」を押したときの処理 5 if (y > -3) { 6 float start = TRANSLATE_Y * y; 7 float end = start - TRANSLATE_Y; 8 animationImageView("translationY", start, end); 9 y--; 10 11 if (x == -2 && y == -3 && x ==2) { 12 AlertDialog.Builder dl = new AlertDialog.Builder(MainActivity.this); 13 dl.setMessage("せいかい!!"); 14 dl.show(); 15 } 16 } 17 } 18 19 }); 20
回答2件
あなたの回答
tips
プレビュー