API.Iosからの応答を受信した上でUIを更新するUIを更新するため、デフォルトではメインキューを使用していますが、それはあなたが持っている100%のefficient.Henceではありませんしながら、あなたがしなければならないのは、メインキューのキャッチホールドですUIは、メインスレッドだけとそれを行うための方法で更新されることを確認することは以下の通りです:
DispatchQueue.main.async{
//UI related code eg:
self.label.text = "abc"
self.button.setTitle("xyz",.normal)
self.tableView.reloadData()
}
あなたがメインスレッドアニメーションのホールドをキャッチされていない場合は、または動作しない場合があります。 しかし、メインスレッドのアニメーションを使用している場合は、間違いなく動作します。
正しいコードAPIレスポンスにUIを更新中:アニメーションが停止し、奇妙なクラッシュにつながる可能性があり
Alamofire.getApiCall(paramaters: parameters, completion:{
response in
// UI related code.
DispatchQueue.main.async{
self.label.text = "abc"
self.button.setTitle("xyz",.normal)
self.tableView.reloadData()
}
})
不正なコード:
Alamofire.getApiCall(paramaters: parameters, completion:{
response in
// UI related code.
self.label.text = "abc"
self.button.setTitle("xyz",.normal)
self.tableView.reloadData()
})
をより多くの情報はここに有用であろう。あなたはどのようにアニメーション化していますか?関連するコードを投稿できますか?それ以外の場合は、Apple Devフォーラムでもっと幸運を祈るかもしれません。 –
私は絶対的に[self.navigationController pushViewController:viewController animated:YES]スタイルのビューコントローラのトランジションを行っています。悲しいことに、アップルのdevフォーラムは私の経験ではSOと比べると少し荒れていますが、そこにはスレッドもあります。 –
あなたはUIViewControllerのカスタムサブクラスをまったく使用していませんか?在庫部品だけ?私は、記憶の圧力のために停止しているアニメーションについて聞いたことがありません。それは起こりそうもない。 – Jeff