2012-04-10 3 views
0

Ich habe ein benutzerdefiniertes UIPickerView erstellt und möchte es versteckt halten und es dann auf dem Bildschirm animieren, wenn eine Schaltfläche gedrückt wird. Ich habe normalerweise kein Problem damit. Ich füge einfach die Ansicht als Unteransicht zu self.view hinzu, aber das Problem ist, dass ich versuche, es in einem TableViewController zu setzen. Wenn ich es zu self.view hinzufüge, wird es am tableviewcontroller geklebt und scrollt mit der Tabellenansicht ... was ich nicht will. Ich habe versucht, es zu self.view.window hinzuzufügen, aber das hat nicht funktioniert ... Ich konnte mein benutzerdefiniertes Element nirgends sehen.Lassen Sie das benutzerdefinierte UI-Element nicht in TableViewController scrollen

Ich fühle mich wie das ist einfach, aber ich bin nur etwas fehlt ...

+0

Wieso sogar einen UITableViewController verwenden? – CodaFi

Antwort

0

Es klingt, als ob Ihre Tabellenklasse von UITableViewController erbt. Wenn dies der Fall ist, fügt das Hinzufügen der Picker-Ansicht zu self.view es dem TableView hinzu - deshalb bleibt es dabei. Ich würde versuchen, Ihre Basisklasse von etwas höher als UITableViewController (UIViewController, vielleicht; Sie können so hoch wie NSObject gehen) und geben Sie dann zwei Eigenschaften - eine für die PickerView und eine für die TableView. Wenn Sie pickerView also zu self.view hinzufügen, fügt es es parallel zur Tabelle und nicht als Kind hinzu.

1

Es klingt wie Sie diese Picker wollen verschwinden um den Bildschirm nach oben schieben, wenn erforderlich und dann. Es gibt wahrscheinlich eine Reihe von Möglichkeiten, dies zu tun, aber die erste Sache ist, dass es keine Unteransicht des View-Controllers sein sollte. Wahrscheinlich sollte es eine Unteransicht der übergeordneten Ansicht des View-Controllers sein.

Ich würde in die beste Möglichkeit schauen, um eine Aussicht, vielleicht modal und dann gehen Sie in diese Richtung.

Verwandte Themen