【Swift】UITableViewでセルを選択不可にする方法

チャット画面などで、Tableviewの選択状態を無効にするための方法をまとめておきます。

目次

デフォルト設定


UITableviewのデフォルト設定では、セルをタップすると暗くハイライトされてしまいます。

コードでの設定方法

コードでは、cell.selectionStyleで設定できます。

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) 
    cell.selectionStyle = .none //.defaultで選択可能

cell.selectionStyleの中には、.none.defaultの他に.blue.grayがあります。
.blueはiOS7以前のむか〜しのデザインの時に使用されていたデフォルトの設定です。.grayも同様です。
今(iOS15, 2021年12月)はもう使用しても変化しません。.none.defaultの2種類を使用しましょう。

Storyboard内での設定方法

Storyboard内で設定する場合は、Attribute Inspector のSelectionタブをNo selectionに変更します。この場合全てのセルがタップしても色が変化しなくなります。

よかったらシェアしてね!

コメント

コメントする

目次
閉じる