в моем приложении я использую collectionview.so Я использую модель и вставляю массив ответов в модели и устанавливаю perticular image в perticular cell. и его показ отлично, когда просмотр коллекции загружается, но когда я прокручиваю изображения, получая изменения, изображения загружаются в том месте, где я не хочу отображать его и его продолжать изменять.uicollectionview cell background image come repetadely
вот мой код
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell : seat_cell = collectionView.dequeueReusableCellWithReuseIdentifier("seat_cell", forIndexPath: indexPath) as! seat_cell
let data : SeatDetailModel = get_seat_detail.objectAtIndex(indexPath.row) as! SeatDetailModel
if (data.KoltukStr == "PI") || (data.KoltukStr == "MA") || (data.KoltukStr == "SA") || (data.KoltukStr == "KA") || (data.KoltukStr == "KO")
{
cell.backgroundColor = UIColor.clearColor()
cell.lblname.text = ""
}
else
{
cell.lblname.text = data.KoltukStr
if (data.DurumYan == "2") && (data.Durum == "0")
{
//cell.img_seat.image = UIImage(named: "seat_men")
//cell.backgroundColor = UIColor(patternImage: UIImage(named: "seat_men")!)
cell.backgroundView = UIImageView(image: UIImage(named: "seat_men"))
}
else if (data.DurumYan == "1") && (data.Durum == "0")
{
cell.backgroundView = UIImageView(image: UIImage(named: "seat_lady"))
}
else if (data.Durum == "0")
{
cell.backgroundView = UIImageView(image: UIImage(named: "seat_green"))
}
else
{
cell.backgroundView = UIImageView(image: UIImage(named: "blank_seat"))
}
}
return cell
}
func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
let cell : seat_cell = collectionView.dequeueReusableCellWithReuseIdentifier("seat_cell", forIndexPath: indexPath) as! seat_cell
let data : SeatDetailModel = get_seat_detail.objectAtIndex(indexPath.row) as! SeatDetailModel
if (Gender.isEmpty)
{
alertViewShow(self, title: "Alert", message: "Please Select Gender before Seat Selection")
}
else
{
cell.backgroundView = UIImageView(image: UIImage(named: "seat_lady"))
}
[![This is the screen which load when collectionview load this is perfect][1]][1]
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return get_seat_detail.count
}
в изображении вы можете показать вид, который я получил во время прокрутки. но когда первоначально CollectionView загрузить его, показывая совершенное средство его не показывая место без номера, который был совершенен
Это потому, что ячейки используются повторно при прокрутке, задайте изображение в обоих условиях. Когда изображение не требуется, установите nil в backgroundview – Savitha
извините, но я смущен, можете ли вы отправить строку кода @Savitha –
if (data.KoltukStr == "PI") || (data.KoltukStr == "MA") || (data.KoltukStr == "SA") || (data.KoltukStr == "KA") || (data.KoltukStr == "KO") { cell.backgroundView = nil } else {// установить изображение на основе условия} – Savitha