Отключение функциональности кнопки для определенной ячейки таблицы - PullRequest
0 голосов
/ 30 октября 2019

У меня следующий процесс. У каждой ячейки табличного представления есть objectId, на который ссылаются как на метку. Когда пользователь нажимает кнопку «Нравится» или «Не нравится» в этой ячейке, objectId в этой ячейке сохраняется в currentUserObjectIdsTouched («массив») PFUser. Когда конкретному пользователю уже понравилась или не понравилась ячейка на основе его currentUserObjectIdsTouched, я хочу отключить функции «нравится» и «не нравится» для этой конкретной ячейки. У меня все есть до отключения. Как отключить обе кнопки.

Мой синтаксис кнопки в cellForRow: ... cell.likesButton ()

     cellForRow:

        if currentUserObjectIdsTouched.contains(cell.objectId.text!) {
            print("should invalidate buttons for cell with objectId \(cell.objectId.text!)")
        }

1 Ответ

0 голосов
/ 30 октября 2019

Вам нужно сделать это внутри cellForRowAt

cell.likesButton.isEnabled = !(currentUserObjectIdsTouched.contains(cell.objectId.text!))

Хорошей практикой является сравнение с моделью, например,

let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! CustomCell
let item = arr[indexPath.row]
cell.likesButton.isEnabled = !(currentUserObjectIdsTouched.contains(item.objectId))
...