これについて少し混乱していたので、投稿しようと思いました。私のタイトルが明確でなく、Javaが非常に新しく、説明方法がわからない場合は申し訳ありません。とにかくこれまでの私のコードセットです(私が推測する問題ビット)
int currentImageIndex = 0; // Assuming [0] is your first image.
int[] nextImageList = { 2, 4, 5, 4, 5, 4, 5, 0, 1 };
public void nekoRun() {
moveIn();
scratch();
moveOut();
private void moveIn() {
for (int i = 0; i < getWidth()/2; i+=10) {
xPos = i;
// swap images
if (currentImage == nekoPics[0])
currentImage = nekoPics[1];
else
currentImage = nekoPics[0];
repaint();
pause(150);
private void scratch() {
for (int i = xPos; i < getWidth();) {
xPos = i;
// Swap images.
currentImageIndex = nextImageList[currentImageIndex];
currentImage = nekoPics[currentImageIndex];
repaint();
pause(150);
}
}
private void moveOut() {
for (int i = xPos; i < getWidth(); i+=10) {
xPos = i;
// swap images
if (currentImage == nekoPics[0])
currentImage = nekoPics[1];
else
currentImage = nekoPics[0];
repaint();
pause(150);
}
}
だから基本的に何が起こるか(これは「ジューシーな部分」だけのコードのすべてではありません、猫は画面を横切って座って座って2回引っ掻くはずです、私はちょうど全体を使用していたので配列の助けを得ました他のifステートメントの山、そしてそれが不必要であることを私は知っていました猫は中央に走り、引っ掻き、そしてループで引っ掻き続けます、明白な理由のために、私はそれを動かす方法に混乱していますスクラッチをループし続けるのではなく、moveOutメソッドに追加します。これが少し不明確な場合は申し訳ありませんが、私はこれに非常に慣れていないので、我慢してください。
前もって感謝します