0
私はUICollectionView
を使用しています。ユーザーがセルをクリックすると、特定のプロセスが実行されます。このプロセスには数秒かかることがあるので、このプロセスが開始されるとすぐに、処理メッセージを表示してユーザに表示したいと考えています。UICollectionViewのメインスレッドを呼び出すdidSelectItemAt
次のように一般的な考え方をされています
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
DispatchQueue.main.async {
self.someView.isHidden = false
print("showing processing message is about to start")
}
// some process runs here which may take a few seconds to finish
DispatchQueue.main.async {
self.someView.isHidden = true
print("hidding processing message")
}
}
を私にいくつかの未知の理由で、メインスレッドにこれらの呼び出しは、このようにその処理メッセージは、それがほぼ同時に消え、didSelectItemAt
が完全に終了した直後に実行されています登場しました。
私がここで紛失していることを誰かが知っていますか?
感謝:)