У меня есть ImageView, в котором изображение переключается каждые 5 секунд, я пытаюсь добавить паузу и
кнопка возобновления, которая может остановить и перезапустить действие. я использую Handler, Runnable и
postDelay () для переключения изображений, и я поместил код на Resume. я думаю об использовании
ждать и уведомлять о паузе и возобновлении, но это будет означать создание дополнительного потока. так что
далеко для потока, у меня есть это:
класс RecipeDisplayThread расширяет тему
{
логическое значение PleaseWait = false;
// This method is called when the thread runs
public void run() {
while (true) {
// Do work
// Check if should wait
synchronized (this) {
while (pleaseWait) {
try {
wait();
} catch (Exception e) {
}
}
}
// Do work
}
}
}
и в onCreate () основного действия:
Button pauseButton = (Button) findViewById(R.id.pause);
pauseButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View view)
{
while (true) {
synchronized (thread)
{
thread.pleaseWait = true;
}
}
}
});
Button resumeButton = (Button) findViewById(R.id.resume);
resumeButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View view)
{
while (true) {
// Resume the thread
synchronized (thread)
{
thread.pleaseWait = false;
thread.notify();
}
}
}
});
кажется, что кнопка паузы работает, но потом я не могу нажать любую другую кнопку, например
кнопка возобновления.
спасибо.