我有一個彈出窗口,當我點擊一個單元格時出現。在這個popover中,有一個帶有一行的TableView。當我點擊該行時,會有三個新行與動畫一起出現。我想刪除該動畫。可能嗎 ?如何在Popover的TableView選項中禁用動畫?
這裏是我的代碼:
extension PlanningActionTableViewController
{
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
return numberOfRows()
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCellWithIdentifier("ActionCell", forIndexPath: indexPath) as!PlanningActionCell
// Info cells
if registration == nil
{
if slot.registrations.count > indexPath.row
{
let contact = slot.registrations[indexPath.row].contact
let name = contact.lastname + " " + contact.firstname
cell.actionLabel.text = (name.characters.count > 1 ? name : "Réservation en cours")
cell.accessoryType = .DisclosureIndicator
cell.imageSymbol.image = UIImage(named: "picto.user.default")
return cell
}
cell.actionLabel.text = "Ajouter"
cell.accessoryType = .None
cell.imageSymbol.image = UIImage(named: "picto.user.add")
return cell
}
// Actions cell
switch indexPath.row
{
case 0:
cell.actionLabel.text = "Détails"
cell.accessoryType = .None
cell.imageSymbol.image = UIImage(named: "picto.user.details")
case 1:
var state = "Non"
if let contact = registration?.contact
{
state = (contact.isArrived ? "Oui" : "Non")
}
cell.actionLabel.text = "Est arrivé: " + state
cell.accessoryType = .None
cell.imageSymbol.image = UIImage(named: "picto.user.valid")
default:
cell.actionLabel.text = "Supprimer booking"
cell.actionLabel.textColor = UIColor.redColor()
cell.imageSymbol.image = UIImage(named: "picto.user.delete")
cell.accessoryType = .None
}
return cell
}
}
NumberOfRows:
func numberOfRows() -> Int
{
if registration == nil
{
return slot.subslotsCount
}
return 3
}
實例視頻:
<iframe src="//gifs.com/embed/1wvE6R" frameborder="0" scrolling="no" width='480' height='220.7665505226481' style="-webkit-backface-visibility: hidden;-webkit-transform: scale(1);" ></iframe>
首先,你的意思是什麼樣的動畫,擴大新行的彈出窗口或外觀,或兩者?其次,'cellForRowAtIndexPath'方法本身不負責行動畫,在擴展數據源的地方添加代碼,即插入新行和/或修改'numberOfRows'的值。 –
這是新行的外觀。當我顯示三條線(或更多)時,有一個向下增加的彈出式動畫。 – Claudio
如果您不想要動畫,請計算所需彈出窗口的內容大小,手動設置它並觸發無動畫的數據源更新。 –