Bir düğmenin tıklandığında başlayan Runnable'ı tanımladım, her 1 saniyede bir ImageView görüntüsünü değiştirir. Benim görüşüme göre, kullanıcı bunu tıkladığında tekrar Runnable'ı başlattığım ama bu sefer ImageView görüntüsünü her 2 saniyede bir değiştirdiğimde başka bir düğme var.Android'de bir Runnable'ı birden çok kez kullanın ve bellekte etkisi
Sorum şu: ikinci düğmeyi tıkladığımda, şimdi tek tek iş parçacığı çalıştırmam gerekiyor mu, yoksa yalnızca Runnable'ın ilk örneğini durdurup diğer örneği mi başlatıyorum?
Not: Android'de thread'lar ve Runnable hakkında bazı konular okudum ama yine de farklı bir şey benim için net değil. Ayrıca bu soruyu ve cevapları okudum bana kendi sorumu sormak için duyuyorum. Java - Running a thread twice
Kötü İngilizce için özür dilerim. Benim kod
Runnable kısmı:
Ben, zaman içindeImageView
güncelliyor bir döngü içindeyken bir iş parçacığı oluştururken olduğunu anlamış ne kodunuzdan Yani
private final Runnable mRunnable = new Runnable() {
public void run() {
if (mIsFlashOn) {
if (mSwap) {
mImageViewBeam.setVisibility(View.VISIBLE);
mSwap = false;
mHander.postDelayed(mRunnable, 10000/((mStrobeCounter * 5) + 10));
} else {
mImageViewBeam.setVisibility(View.GONE);
mSwap = true;
mHander.postDelayed(mRunnable, 10000/((mStrobeCounter * 5) + 10));
}
}
}
};
kod parçası paylaşın başlamak daha katedilebilen ilk kaldırmak için
mHandler.removeCallbacks(mRunnable);
bu hat kullanın ve gerek. ImageView'ı, Runnable iş parçacığı –@ReazMurshed Kodundan – MehrdadSComputer