Add Blick über tableview (UITableViewController)
Situation: ich habe ein UITableViewController laden einige Daten asynchron von einem service. Während dieser Zeit würde ich gerne ein Vollbild (außer navigation) Blick über die table Ansicht zeigt meine custom-Anzeige und text.
Problem: das problem, Das ich bin vor ist, dass, wenn meine benutzerdefinierte Ansicht (es hat einen roten hintergrund) platziert, über die UITableView die Zeilen der Tabelle-Ansicht angezeigt, über meine benutzerdefinierte Ansicht (siehe Bild unten).
, Was ich versucht habe:
Ich habe versucht, insertBelow und oben, hat nicht funktioniert. Ich habe auch versucht zu tun: tableview.Hidden = true, aber das verbirgt sich auch die benutzerdefinierte Ansicht aus irgendeinem Grund, wie gesehen auf Bild 2.
Image1: Für einige Grund ich kann sehen, dass die Linien warf meine Ansicht.
Bild 2: Tableview + benutzerdefinierte Ansicht gegangen, wenn hidden = true verwendet.
Mein code:
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
UIView view = new UIView (new RectangleF (0, 0, this.TableView.Frame.Width, this.TableView.Frame.Height));
view.BackgroundColor = UIColor.Red;
this.TableView.AddSubview (view);
TableView.Source = new SessionTableViewSource ();
}
stackoverflow.com/a/26138644/1856497
InformationsquelleAutor Mittchel | 2013-09-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das Problem ist, dass die Sicht eines
UITableViewController
ist einUITableView
, so dass Sie nicht hinzufügen können, Untersichten an den controller oben in der Tabelle.Ich würde empfehlen den Wechsel von einer
UITableViewController
zu einem einfachenUIViewController
enthält eineUITableView
. Auf diese Weise die controller-Hauptansicht ist eine einfacheUIView
, die eine Tabelle enthält, und Sie können hinzufügen, Untersichten, um die wichtigstenUIView
und Sie werden oben in der Tabelle anzeigen.Hat mir sehr geholfen, vielen Dank!
Sie verlieren so viel Funktionalität nicht zu nutzen, UITableViewController also am besten wählen Sie eine andere Lösung
InformationsquelleAutor redent84
Können Sie
self.navigationController.view
als Ansicht für das hinzufügen Untersicht.Sie können erstellen Sie eine benutzerdefinierte Untersicht wie: lass customView: UIView = { let //addPropertiesHere customView = UIView() return customView }() selbst.navigationController?.Blick.addSubview(customView). Funktioniert wirklich gut mit DZNEmptyDataSet.
InformationsquelleAutor sagus_helgy
Können Sie versuchen, fügen Sie die Ansicht, um das Fenster statt der Schachtelung in der Tabelle die Ansicht wie diese:
InformationsquelleAutor jonas vermeulen
InformationsquelleAutor jianpx
Swift /Storyboard Lösung
Hinweis: Die folgenden code wird davon ausgegangen, man hat eine benutzerdefinierte Ansicht (ratingView in meinem Fall), das vorgestellt werden soll, über eine UITableView.
Gelesen habe ich viele Antworten auf diese und ähnliche Fragen auf, SO. Die anderen Antworten aus diesen Quellen gearbeitet, die in unterschiedlichem Grad für mich (z.B. view geladen, aber nicht angezeigt oder ist nicht zugänglich,...). Ich bin mit Swift 2.0+, und ich bin teilen die komplette Lösung für das mit einer UITableViewController.
Erstellen Sie eine Steckdose, um die Navigation und die Ansicht, die Sie wollen, zu bringen über den tableview.
In meinem Fall wollte ich auch animieren, den Blick über den tableview, so habe ich eine Klasse, variable, um eine Referenz zu dem Wendepunkt und einen Punkt über der Szene (off-screen).
Dann in
viewDidLoad
rief ich eine Funktion (configureRatingViewAutoLayout), das konfiguriert und ergänzt die Vorgaben für die neue Ansicht zu animiert werden, über die tableview.Irgendwann später... In Antwort auf ein UIControl Fall nenne ich diese Methode.
Diese helper-Methoden können so konfiguriert werden, um den Zugriff auf Elemente in der Szene, in der Darstellung der Ansicht.
Vorbehalte
InformationsquelleAutor Tommie C.
Versuchen, diese zu Haken, einem Knopf am unteren Rand des
UITableViewController
declare-button als variable:
und in
viewDidLoad
:und implementieren Sie diese Methode:
InformationsquelleAutor Sh_Khan