2016-03-25 17 views
1

Diğer cevaplara baktım ama işe yaramayacak gibi görünmüyor. Bu kodu uyguladık:Seçildiğinde hücrenin yüksekliğini nasıl değiştirebilirim?

var selectedCellIndexPath: NSIndexPath? 
let selectedCellHeight: CGFloat = 88.0 
let unselectedCellHeight: CGFloat = 51.0 

// Override to support editing of individual itemCells 

override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat { 

    if selectedCellHeight == indexPath { 
     return selectedCellHeight 
    } 
    return unselectedCellHeight 
} 


override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
    if selectedCellIndexPath != nil && selectedCellIndexPath == indexPath { 
     self.selectedCellIndexPath = nil 
    } else { 
     self.selectedCellIndexPath = indexPath 
    } 

    tableView.beginUpdates() 
    tableView.endUpdates() 

    if selectedCellIndexPath != nil { 
     // THis ensure, that the cell is full visile once expended 
     tableView.scrollToRowAtIndexPath(indexPath, atScrollPosition: .None, animated: true) 
    } 
} 

Ve diğer StackOverflow yanıtları aldım, ama benim uygulamayı çalıştırdığınızda hücre yalnızca (gölgeli yapılarak) o seçili olduğunu gösterir ve daha sonra başka hiçbir eylemleri gerçekleştirir. Herhangi bir yardım çok iyi olacaktır! Ben bir başlangıç ​​geliştiricisiyim!

cevap

2
if selectedCellHeight == indexPath { 

if selectedCellIndexPath == indexPath { 
+0

, @Aaron Brager teşekkürler olmalı! Hala acemi, bu yüzden benim için görmesi kolay değildi! Yardımı gerçekten takdir ediyorum. – KeithFrazier98

+0

@ KeithFrazier98 Yardım etmekten mutluluk duyuyorum! Bu sorununuzu çözdüyse, lütfen cevabımın solundaki onay kutusunu tıklayın. (Bu diğer kullanıcılara artık yardıma ihtiyaç duymadığınızı gösterir.) –

İlgili konular