2017-06-25 13 views
-2

私は以下のテーブルビューを持っていますが、私はビューコントローラ上の側面をクリックするとターゲットセルの選択を解除できます。インデックスパスで行の選択を解除することを確認しましたが、側にクリックしてトリガーする方法があるかどうかはわかりません。クリックするとテーブルセルの選択を解除します。 Swift

enter image description here]

+0

この回答を:HTTPS ://stackoverflow.com/a/25503413/4763963幸運を祈る! –

+0

Swiftにバージョンはありますか? – Martheli

答えて

1

あなたは、テーブルビューをオフにクリックすると、いくつかのイベントハンドラを使用すると、行の選択解除を行うようにするためにトリガされなければなりません。だからあなたのビューコントローラの残りの部分は、ユーザーとの対話なしで静的なものである場合、あなたは単にあなたのビューコントローラの残りの部分の上に透明UIViewを置くことができ、このように選択を解除します:あなたはそれを達成するのを助ける必要があります

let gesture = UITapGestureRecognizer(target: self, action: #selector (self.checkAction(sender:))) 

self.YourTransparentView.addGestureRecognizer(gesture) 

func checkAction(sender : UITapGestureRecognizer) { 
    if let indexPath = self.tableView.indexPathForSelectedRow{ 
     self.tableView.deselectRow(at: indexPath, animated: true) 
    } 
} 
+0

ステップ1は必要ありません。現在選択されているindexPathが何であるかをテーブルビューに尋ねるだけです。あなた自身でそれを追跡する必要はありません。 – rmaddy

+0

@rmaddyありがとう、答えが更新されました –

関連する問題