私が望むのは、新しいビューを起動するためのセルの簡単なタップです。打ち上げは機能しますが、選択されたことを登録するには、セルを保持するのに非常に長い時間(3〜5秒)かかります。これは正常な動作ですか?簡単な.touchUpInsideイベントに応答する方法が見つかりません。だから私は何が間違っているの?私は、UITableViewCellのAppleのドキュメントを読みましたが、ここで私を助けるフィールドや設定を見つけることができません。前もって感謝します!UITableViewCell didSelectRowAtIndexPathが選択に応答するのが非常に遅い
EDIT:ビューコントローラのviewDidLoadで :のViewControllerで
self.searchTable.dataSource = self
self.searchTable.delegate = self
self.searchTable.register(UINib(nibName: "ItemCellView", bundle: nil), forCellReuseIdentifier: "itemCell")
self.searchTable.reloadData()
:
func searchBarSearchButtonClicked(_ searchBar: UISearchBar){
searchItems.removeAll()
self.searchBar.endEditing(true)
requests.requestSearch(query: searchBar.text!, filter: "RATING", vc: self)
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return (self.searchItems.count)
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = self.searchTable.dequeueReusableCell(withIdentifier: "itemCell")! as! ItemCell
cell.formatCell(item: self.searchItems[indexPath.row])
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath){
let item = self.searchItems[indexPath.row]
let vc = self.storyboard?.instantiateViewController(withIdentifier: "item") as? ItemController
vc?.item = item
self.navigationController?.pushViewController(vc!, animated: false)
}
EDIT#2:
私も「私はドンポイントを作りたいです私のコードにはGestureRecognizersが全くありません。
です。 UIの変更はメインスレッドで行われなければならないので、 'DispatchQueue.main.async {}'を使うと助けになるかもしれませんが、コードなしで言うのは難しいです – mat
UIがロックされていませんよく私がセルのサブビューとしてボタンを持っていたとき。私はスクロールしながら、セルの再利用性と古いデータに対応するボタンの他の問題に遭遇しました。 – user3858610
私はコードを投稿できますが、これはチェックされていないストーリーボードのチェックボックスの可能性が高いと思います。 「遅れたコンテンツ」のようなものだが、私はそれを試みた – user3858610