以下のシングルトンハンドラークラスがあります
public class MyHandler
{
private static Handler handler;
private static boolean isRunning;
public static Handler getHandler(Runnable myRunnable)
{
if (handler == null)
{
initHandler(myRunnable);
}
return handler;
}
private static void initHandler(Runnable myRunnable)
{
handler = new Handler();
isRunning = true;
handler.postDelayed(myRunnable, 5000);
}
public static void reRunHandler(Runnable myRunnable)
{
isRunning = true;
handler.postDelayed(myRunnable, 45000);
}
public static void stopMyHandler()
{
isRunning = false;
handler.removeCallbacksAndMessages(null);
}
}
ただし、ここから UI を更新するにはどうすればよいですか? ランナブルは私の活動の中にあるので。どうやら getHandleMessage を使用して通信することはできません。
さらにコードが必要な場合は、これをどのように使用しているかを共有できます。