私は終わりのない円を終わらせようとしています。別のクラスから静的ではないvoidを呼び出す必要があります。静的にしない理由は、静的にするのが非常に難しいものがあるからです。(静的ボイド内のすべては静的である必要があります)。
別のクラスから非静的ボイドを呼び出す必要があるサークルに閉じ込められています。一部のコードが渡されたくないので、静的にすることはできません。
今まで私はそれをハンドラーによって解決しました:
public static void change(){
//This is called to change a boolean
start=true;}
private void startDone(){
int timeBetweenChecks = 50;
final Handler h = new Handler();
h.postDelayed(new Runnable(){
public void run(){
if (start==false){
startDone();
} else{
//Do something
}
}
}
}, timeBetweenChecks);
};
これに伴う問題は、何かがかなり頻繁に変更されているかどうかをチェックするハンドラーを実行する必要があることです(私の場合)。
非静的startDone()を直接呼び出す方法はありますか?