Как изменить непрозрачность и цвет UITableViewCell, когда я использую moveRow (at:, to :) - PullRequest
0 голосов
/ 19 июня 2020

Вот мой код. Моя быстрая версия - 4.

tableview.beginUpdates() 
tableview.moveRow(at: IndexPath(row: indexPath.row, section: 0), to: IndexPath(row: 0, section: 2))
tableview.endUpdates()

Проблема с изменением раздела tableview. Поскольку каждый раздел имеет другую непрозрачность и цвет, я хочу, чтобы непрозрачность и цвет изменялись сразу после использования moveRow (at:, to :).

Но я не могу найти, как мне. Пожалуйста, помогите мне!

1 Ответ

2 голосов
/ 19 июня 2020

Предполагая, что у вас есть собственный класс UITableViewCell. Вы можете написать функцию внутри этого класса, которая будет управлять внешним видом ячеек. Допустим, у вас есть несколько выходов внутри этого класса, вы можете сделать функцию изменения этих элементов представления. Альфа и цвет et c.

Вызов этой функции в ячейке внутри метода cellForRowAtIndexPath:

let cell = tableView.dequeueReusableCell(withIdentifier: "MyCell", for: indexPath) as! MyCustomCellClass
cell.apperanceFunction(alpha: Double, background: UIColor)

в заданном разделе c внутри if или переключателя, я должен предположить у тебя есть. Когда вы перемещаете ячейку в этот раздел, cellForRowAtIndexPath должен быть вызван снова, и функция должна вызываться для указанной c ячейки. Если это не так, вы всегда можете вручную найти эту ячейку с помощью функции cellForRow (at: indexPath) в вашем ViewController и вызвать эту функцию специально.

Надеюсь, это имеет смысл ... Но это немного сложно, когда это это единственный код, который вы предоставляете.

...