나는 촛불과 불꽃을 별도의 이미지보기로 사용합니다. 사용자가 화염을 두 드렸을 때 그 드로어 블 자원은 화염이 날아간 것을 의미하는 투명하게 설정됩니다.ImageView에서 연속적인 이미지 시퀀스 표시
화염이 날아 가면서 연기를 내고 싶습니다. 이를 위해 블랙 연기가 약 21 개 이미지로 나타나 사용자가 연기처럼 보일 수 있습니다. 다음은 화염이 도청 될 때 정지되는 코드입니다 (R.drawable.smoke_22는 화염의 투명 이미지이고 R.drawable.candle_1은 노란색 화염 이미지이고 flag는 화염이 현재 날아 갔는지 여부를 나타냅니다.) flag = 불꽃은 꺼지지 않습니다
int[] smokeImages = { R.drawable.smoke_1, R.drawable.smoke_2,
R.drawable.smoke_3, R.drawable.smoke_4, R.drawable.smoke_5,
R.drawable.smoke_6, R.drawable.smoke_7, R.drawable.smoke_8,
R.drawable.smoke_9, R.drawable.smoke_10, R.drawable.smoke_11,
R.drawable.smoke_12, R.drawable.smoke_13, R.drawable.smoke_14,
R.drawable.smoke_15, R.drawable.smoke_16, R.drawable.smoke_17,
R.drawable.smoke_18, R.drawable.smoke_19, R.drawable.smoke_20,
R.drawable.smoke_21 };
this.flamImageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (flag) {
flamImageView.setImageDrawable(getResources().getDrawable(
R.drawable.smoke_22));
flag = false;
startTimer();
} else {
flamImageView.setImageDrawable(getResources().getDrawable(
R.drawable.candle_1));
flag = true;
smokemageView.setImageResource(R.drawable.smoke_22);
}
}
});
}
private void startTimer() {
for (int i = 0; i < 21; i++) {
try {
Thread.sleep(250);
smokemageView.setImageResource(smokeImages[i]);
} catch (InterruptedException localInterruptedException) {
}
}
smokemageView.setImageResource(R.drawable.smoke_22);
}
반복적 인 터치에 다시 온다하지만 난 당신이 단순히에 문을 위해 포장 할 수
그것은 답변하지만, 단지 작은 힌트 아니다. 안드로이드는 애니메이션 GIF를 지원합니까? 아마도 그것은 당신의 문제를 매우 쉽게 해결할 것입니까? – user2707175
setImageResource는 UI 스레드에서 호출해야합니다. runOnUiThread를 사용하거나 핸들러에 게시하십시오. – njzk2