Sie können die hidden
Eigenschaft UIView
nicht animiert. Sie müssen stattdessen die alpha
-Eigenschaft zwischen 0,0 und 1,0 animieren. Sie machen Ihre Arbeit auch im Abschlussblock Ihrer Animation. Sie sollten es im animations
Block tun. Ich habe auch den Code ein wenig aufgeräumt. Ich gehe davon aus, dass tableView
als UITableView?
deklariert wird, aber wenn es UITableView
oder UITableView
ist, können Sie die ?
weglassen, wenn sie Zugriff auf:
@IBAction func clickButtonAction(sender: AnyObject) {
UIView.animateWithDuration(10.0, delay: 0.0, options: UIViewAnimationOptions.CurveEaseOut, animations: {() -> Void in
if self.tableView?.alpha == 1.0 {
self.tableView?.alpha = 0.0
}
else {
self.tableView?.alpha = 1.0
}
}, completion: { (finished:Bool) -> Void in
})
}
Hinweis: Sie nicht direkt möchten, können sich floating point math is hardalpha == 1.0
, vergleichen. Stattdessen empfehle ich eine lokale Variable zu halten, dass Staat zu verfolgen verwenden, und dann Basis Ihres alpha
ab dafür:
// Make sure this matches the initial hidden state of your table view.
// So if your table view starts at alpha == 0.0, this should be true.
private var tableViewHidden: Bool = false
@IBAction func clickButtonAction(sender: AnyObject) {
tableViewHidden = !tableViewHidden
UIView.animateWithDuration(10.0, delay: 0.0, options: UIViewAnimationOptions.CurveEaseOut, animations: {() -> Void in
if tableViewHidden {
self.tableView?.alpha = 0.0
}
else {
self.tableView?.alpha = 1.0
}
}, completion: { (finished:Bool) -> Void in
})
}
i in der Programmierung neu bin. Gibt es da ein Beispiel dafür ?? –
Bearbeitet mit Beispielcode. –
kann ich es herausschieben oder einschieben, anstatt auszufallen. Ich habe diesen Code angewendet und die Tabelle wird ausgeblendet, anstatt hinein und heraus zu schieben. –