Kısa bir süre önce iOS geliştirmeyi öğrenmeye başladım ve bazı sorunlara rastladım. Etiket, (varsayılan olarak gizlidir) görüntü görünümü ve bir düğmeye:Düğmeye basıldığında UITableviewCell'de özel görünüm nasıl görüntülenir?
Özel bir hücre ile tableView var. Çalıştırılmasını istiyorum, böylece hücre için düğmeye tıklandığında görüntü görüntüsü gösterilir. Sorun, hücre her yeniden kullanıldığında, yeniden görüntülenen hücre için resim görünümü gösterilir. İlk hücreye basıldığında, SADECE ilk hücrelerin görüntü görünümünün gösterilmesi için çalışmasını sağlamak istiyorum. Birinci ve üçüncü hücreye basıldığında, görüntü görünümü SADECE ilk ve üçüncü sıra için ve diğer satırlarda gösterilmemelidir.
Benim şimdiki çözüm:
class CustomTableViewCell: UITableViewCell {
@IBOutlet var cellTitleLabel: UILabel!
@IBOutlet var cellImageView: UIImageView!
var showImageView = false
@IBAction func showImageViewAction(sender: UIButton) {
showImageView = true
displayCell()
}
func displayCell() {
if showImageView {
cellImageView.hidden = false
} else {
cellImageView.hidden = true
}
}
}
Ve görünümü denetleyicisi için
:func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 30
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("CustomCell", forIndexPath: indexPath) as! CustomTableViewCell
return cell
}
func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {
let customCell = cell as! CustomTableViewCell
customCell.displayCell()
}
hücre yeniden kullanılacağı zaman resim görünümü gizli alır, böylece nasıl oluşturulacağı hakkında herhangi bir öneriniz? actionButton basıldığında o MainClass bilgilendirmek
eklenti protokolünü: Eğer cellImageview.hidden
durumunu kaydetmek varsa
uygun yapmak? İlk hücre için düğmeye dokunun halinde –
sayılı Şu anda, resim görünümü aşağıdaki hücreler için göstermektedir: 1, 6, 11, 16, 21 ve 26. Ben bir o olduğunu varsayarak, çünkü 21 hücre 6, 11, 16 ve 26, dequeueReusableCellWithIdentifier öğesinin görüldüğü sırada – user3489053
göründüğü sırada 1 hücresini yeniden kullanır. İlk önce belirli bir hücreyi [indexPath.row] 'ı alabilir ve ardından o hücreye ait görüntüyü gizleyebilir misiniz? arasında –