Я использую пользовательские UITableViewCells с кнопкой, меткой и представлением прогресса в каждой ячейке.Доступ к объектам в пользовательских UITableViewCells
Я установил тег каждого объекта в своем cellForRowAtIndexPath
, чтобы каждый объект имел тот же тег, который также является строкой ячейки в представлении таблицы.
Проблема в том, как я могу получить доступ к объекту представления прогресса и показать некоторый прогресс при нажатии кнопки в ячейке? Как я должен правильно обращаться к этим объектам в методе, который не имеет параметра NSIndexPath
?
Благодаря
установка UITableViewCell:
class SongsTableViewCell: UITableViewCell {
@IBOutlet weak var lblSongTitle: UILabel!
@IBOutlet weak var btnPlayPause: UIButton!
@IBOutlet weak var progressCell:UIProgressView!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
}
DetailsViewController с UITableView:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("SongTitleCell", forIndexPath: indexPath) as SongsTableViewCell
let songDic : NSDictionary = arrSongs.objectAtIndex(indexPath.row) as NSDictionary
cell.lblSongTitle.text = songDic.objectForKey("SongTitle") as? String
cell.btnPlayPause.tag = indexPath.row
cell.progressCell.tag = indexPath.row
}
действий для кнопки в ячейке:
@IBAction func cellSongClicked (sender : AnyObject){
// Need to access the progress view here....
var btnCurrentPressed = sender as UIButton
var cell = self.tableView.viewWithTag(btnCurrentPressed.tag)
var progressInCell : UIProgressView!
}
Я хочу, когда Я нажимаю кнопку btnPlayPause
, чтобы получить доступ к progressCell и показать некоторую обработку.
Можете ли вы опубликовать код, чтобы сделать его более понятным, что вы делаете? Вы можете передать объект просмотра прогресса в этот метод. – Chris
@Chris Я добавил коды –