У меня странная проблема с моим tableView. У меня есть список звуковых дорожек и переход к аудиоплееру для воспроизведения выбранной дорожки в определенной строке. Все работает нормально!
Я хотел изменить цвет фона для выбранной строки в таблице, чтобы, как только пользователь воспроизвел аудио и вернулся к списку дорожек (мой контроллер табличного представления), он мог видеть, какие ранее выбранные строки.
Но когда я запускаю, он меняет цвет не только для строки по выбранному мной индексному пути, но и для элемента по индексному пути + 10. Если я выбираю первую строку, он меняет цвет строки по индексу: 0, 10, 20, 30...
Чтобы изменить цвет выбранной ячейки, я сделал следующее:
// MARK: - Navigation
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
self.performSegueWithIdentifier("audioPlayer", sender: tableView)
var selectedCell:UITableViewCell = tableView.cellForRowAtIndexPath(indexPath) as CustomTableViewCell
selectedCell.contentView.backgroundColor = UIColor.greenColor()
selectedCell.backgroundColor = UIColor.blueColor()
Пожалуйста, найдите скриншот моей проблемы, я выбрал только три строки: 1, 3, 5, но я выбрал 1,3,5,11,13,15,21,23 и так далее... : https://www.dropbox.com/s/bhymu6q05l7tex7/problemaCelleColore.PNG?dl=0
Для получения дополнительной информации - если можете помочь - вот мой класс Custom Table View:
import UIKit
class CustomTableViewCell: UITableViewCell {
@IBOutlet weak var artista: UILabel!
@IBOutlet weak var brano: UILabel!
var ascoltato = false
@IBOutlet weak var labelRiproduciAscoltato: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
func setCell(artista: String, brano: String){
self.artista.text = artista
self.brano.text = brano
}
} // END MY CUSTOM TABLE VIEW CELL
Вот метод cellForRowAtIndexPath в моем TableViewController:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCellWithIdentifier("tableCell", forIndexPath: indexPath) as CustomTableViewCell
var tracks : Brani //Brani is my custom Object for handle my tracks
cell.setCell(tracks.title!, brano: tracks.author!)
return cell
}
У меня iPad Air с iOS 7.1.
Заранее благодарю за любые предложения или советы, связанные с моей проблемой.