2017-02-13 2 views
0

В Swift 3 есть способ доступа к UITableViewCell по индексу (например, 0)?Как получить доступ к пользовательскому TableViewCell по индексу?

Большая картина идея о том, что я пытаюсь сделать, это то, что у меня есть TableViewController и есть обычай UITableViewCell (назовем его MyCell) с ImageView, что я хочу, чтобы очистить (т.е. imageView.image = nil).

Однако у меня возникли проблемы с установкой imageView на nil в пределах TableViewController, так как я не могу получить доступ к самой ячейке. Любая помощь будет принята с благодарностью.

+0

Можете ли вы описать, где вы хотите установить 'imageView's' изображения на ноль. –

+0

Можете ли вы показать ур, попробованный код –

+0

, вы можете использовать 'tableView.cellForRow (at: IndexPath)'? – Tj3n

ответ

2
func cellForRow(at indexPath: IndexPath) -> UITableViewCell? 

Источник: https://developer.apple.com/reference/uikit/uitableview/1614983-cellforrow

пример:

let index = IndexPath(row: 3, section: 2) 
let cell = self.table.cellForRow(at index) 

Для доступа к изображению вы можете сделать как ниже:

self.table.cellForRow(at index).image 
+0

Да! правильно. (y) –

+0

Спасибо, этот ответ мне очень помог. – noblerare

2

как это (я предполагаю, что вы имеете в виду по indexPath; если вы хотите получить индекс массива видимых ячеек, пожалуйста, измените Ваш вопрос или ответ):

let myCell = self.tableView.cellForRow(at: myIndexPath) as! myCustomCellType 

... все из «мой ...» типы объектов, что вы хотите им быть; «myIndexPath» - это индексная ячейка вашей ячейки.

Редактировать

Как получить доступ к UIImageView?

данного кода вы получаете объект ячейки теперь использовать ниже код для доступа к imageView

cell.imageView.image = "img_name.png" 
+0

Да, правильно! (y) –

+0

@the_dahiya_boy: Ха-ха. Должен трижды проверить детали. Не говорю, что я вообще делаю, но поступаю так, как я говорю, не так, как я? :) – dylanthelion

+0

Не поймал вас:/ –

Смежные вопросы