Wenn die Animation ausgeführt wird, um die Breite der Tabellenansicht zu verringern, springt der Papierkorb zuerst nach links, bevor die Animation tatsächlich beginnt. Die Animation wird im ViewController ausgeführt.UIButton in UITableViewCell springt, wenn die UITableView-Breite animiert ist
UIView.Animate(0.05d, 0.15d, UIViewAnimationOptions.CurveEaseInOut,() =>
{
OrderProductsTableView.Frame = new CGRect(LeftPanel.Frame.Width + 130f, OrderProductsTableView.Frame.Location.Y, View.Frame.Size.Width - LeftAddProductPanel.Frame.Width, OrderProductsTableView.Frame.Size.Height);
RightPanelFooter.Alpha = 0;
}, null);
Der Knopf hat eine Einschränkung, so dass sie in von der rechten Seite der Tabelle Sichtzelle immer 8 Pixel ist (die eine XIb ist).
Was ich wollte/erwartet war, dass die Schaltfläche im Laufe der Zeit mit der Animation der TableView-Breite verschoben wurde. Gehe ich fälschlicherweise davon aus, dass das automatische Layout dafür sorgen würde?
Ich könnte reloadData()
auf der Tabellenansicht aufrufen und die Schaltfläche in cellForRowAtIndexPath
manuell neu positionieren, aber ich hoffte auf eine etwas elegantere Weise.
Das ist genau das, was ich getan habe :) – empo