Android でスレッドを使用する単純なアプリケーションに取り組んでいます。アプリケーションに次のコードがあります。しかし、これは機能していないようです。
l = (RelativeLayout)findViewById(R.id.layout_main);
p = new LayoutParams(100, 100);
i = new ImageView(getApplicationContext());
i.setImageResource(R.drawable.bb);
i.setLayoutParams(p);
i.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (running) {
running = false;
} else {
new Thread(new Runnable() {
@Override
public void run() {
while (running) {
try {
Log.d("INFO", "Thread executing");
Thread.sleep(100);
} catch (Exception e) {
running = false;
}
}
}
}).start();
}
return false;
}
});
l.addView(i);
ログも印刷されていません。
編集:running = false;
コードの前です