IOS 26 UIKIT и наблюдаемые с UitableViewControllerIOS

Программируем под IOS
Ответить
Anonymous
 IOS 26 UIKIT и наблюдаемые с UitableViewController

Сообщение Anonymous »

В iOS 26 Observable получил новое обновление, где Uikit может освежить себя, когда изменяется зависимый наблюдаемый объект. К сожалению, я не могу выяснить, почему мой WordtableViewController не перезаряжает и не показывает новые элементы, когда я добавляю. < /P>
@Observable
@MainActor
class Word {
var value: String

init(value: String) {
self.value = value
}
}

class WordTableViewController: UITableViewController {

var words = [Word(value: "First"), Word(value: "Second"), Word(value: "Third")]

override func viewDidLoad() {
super.viewDidLoad()

tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell")

navigationItem.rightBarButtonItem = UIBarButtonItem(
title: "Refresh",
style: .plain,
target: self,
action: #selector(refreshWords)
)
}

@objc private func refreshWords() {
words.append(Word(value: "John Doe"))
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
words.count
}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)

var content = cell.defaultContentConfiguration()

content.text = words[indexPath.row].value
cell.contentConfiguration = content

return cell
}

}
< /code>
Согласно статьям, которые я прочитал, должны автоматически перезагрузить и показывать новые ячейки, когда какие -либо новые данные добавляются в массив слов. В статье они использовали uicollectionView, и я использую UitableView.

Подробнее здесь: https://stackoverflow.com/questions/796 ... controller
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»