関数Bで実行される関数が終了してから数秒後にUIActionSheetを表示したい.
次のようにするとうまくいきます:
main function
{
[self function A]
[self performSelector:@selector(function B) withObject:nil afterDelay:5];
}
しかし、私はMBProgressHUDをアクティビティインジケーターとして使用しています:
main function
{
[HUD showWhileExecuting:@selector(funcion A) onTarget:self withObject:nil animated:YES];
[self performSelector:@selector(function B) withObject:nil afterDelay:5];
}
関数 B が呼び出されることはありません。[セルフ機能B]に切り替えると呼び出されます。これは、まだ理解していないスレッドの問題だと思います。[self performSelectorOnMainThread] を使用すると、関数 B が呼び出されますが、それを遅らせることはできないようです。