Ich habe ein Popover, das erscheint, wenn ich auf eine Zelle klicke. In diesem Popover gibt es eine TableView mit einer Zeile. Wenn ich auf diese Zeile klicke, erscheinen drei neue Zeilen mit einer Animation. Ich möchte diese Animation entfernen. Ist es möglich ?Wie deaktiviert man Animation in TableView Auswahl in Popover?
ist hier mein Code:
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
}
Beispiel im Video:
<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>
Zunächst, was für eine Art von Animation meinen Sie, erweitern das Popover oder Aussehen der neuen Zeilen oder beides? Zweitens ist die 'cellForRowAtIndexPath'-Methode selbst nicht für die Zeilenanimation verantwortlich, sondern fügt den Code hinzu, in dem Sie die Datenquelle erweitern, d. H. Die neuen Zeilen einfügen und/oder den Wert von' numberOfRows' ändern. –
Es ist das Aussehen der neuen Zeilen. Wenn ich diese drei Zeilen (oder mehr) zeige, gibt es eine Animation des Popover, die nach unten steigt. – Claudio
Wenn Sie die Animation nicht möchten, berechnen Sie die Inhaltsgröße für das gewünschte Popover, legen Sie sie manuell fest und lösen Sie das Aktualisieren der Datenquelle ohne Animationen aus. –