実現したいこと
初期化したtableviewcellに個別にアクセスする方法が知りたいです。
どなたか教えてください。お願いいたします。
###コードについて
現在のセルに関してのコードは下記の通りです。
コード
swift
1 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 2 let cell = UITableViewCell(style: UITableViewCell.CellStyle.subtitle,reuseIdentifier: "BDtableview") 3 4 5 cell.textLabel?.text = "ビーコン名:" + BDuuidlist[indexPath.row] 6 cell.textLabel?.font = UIFont.systemFont(ofSize: 15) 7 cell.detailTextLabel?.numberOfLines = 0 8 return cell 9 10 }
補足情報(FW/ツールのバージョンなど)
Xcode 10.3
###個別にセルにアクセスしたい理由
周辺の複数個のibeacon情報を取得し、取得したビーコンのID(UUID)はtableviewcellのtextlabelに設定し、
各ビーコンまでの距離をdetaillabellabelに設定したいと考えているからです。
※現在は、tableviewcellのtextlabelに取得した各ビーコンのIDを表示させる処理まで完了しています。
###予定している処理の大まかな流れ
1.ビーコンの情報を取得(IDとビーコンまでの距離)
2.tableviewcellのtextlabelに設定したビーコン名とビーコンまでの距離が確定したビーコンのIDを比較する。
ビーコンのIDが同じであれば、当該tableviewcellのdetailtextlabelに距離を設定する
説明不足ですいません。よろしくお願いします。
質問に情報を追記いたしました。
> どんなリスクがあるのですか?
UITableViewのセルにはリサイクルの機構があるので、例えばなんらかの永続化したい編集データなどをセルにアクセスしてUIを更新し、「セル上にしかない状態」にしてしまうと、スクロールさせてセルが画面外に行ってしまうとセルが消え、あとでその編集データを保存や再表示させようだとかしたときにデータがどこにもなくて困ることがあるのです。 なので、セルのアクセスをしたいという質問に対しては、間違った回答にならないように確認しておきたいのです。
回答1件
あなたの回答
tips
プレビュー