Frage

Ich habe einige Monotouch-Code geschrieben eine Nib'less UITableView und die Ansicht Aussehen mit Zellendaten auf Standardanzeige bevölkerten ok angezeigt werden soll. Allerdings, wenn ich nach unten scrollen berühren mehr Daten anzuzeigen I mit einem Doppelgitter patten Ende, bestehend aus statischen horizontalen Zellseparator Linien, die mit der Spiral Aktion bewegen und einem anderen Satz oder horizontaler Zellseparator Linien nicht die korrekt beabstandet sind und die sie bewegen mit die nach unten scrollen Aktion.

Nachdem zurück bis an die Spitze der Tabelle Ansicht scrollen, die statische und dynamische horizontals synchronisieren perfekt und der Bildschirm sieht normal aus. Weitere Scrollen erstellt das Problem.

Ich bin mit Standard UITableViewCell Objekte der Tabellenzeilen zu füllen.

Ich habe wahrscheinlich zu konfigurieren etwas nicht nachgewiesen, dass Interface Builder würde normale do. Irgendwelche Ideen? Hoffentlich wird die Objective-C Leute in der Lage, den .NET-Code zu interpretieren.

public override void ViewDidLoad ()
{
    base.ViewDidLoad ();

    _tableView = new UITableView()
    {
        Source = new TableSource(),
        AutoresizingMask = UIViewAutoresizing.FlexibleHeight | UIViewAutoresizing.FlexibleWidth,
        BackgroundColor = UIColor.White
    };
    _tableView.SizeToFit();
    _tableView.Frame = new RectangleF ( 0, 0, this.View.Frame.Width, this.View.Frame.Height );
    this.View.AddSubview( _tableView );

Update 1: I wurde die zusätzliche Gruppe von horizontalen Linien Zellseparator angingen Blutungen durch von der vorhergehenden Ansicht in der Navigationssteuerung Stapel gemacht. Also ich nachbestellt die App die problematische Tabelle der erste Blick auf app Start-up angezeigt zu machen, aber das Problem blieb.

Update 2: hinzugefügt

tableView.SeparatorStyle = UITableViewCellSeparatorStyle.None;

Dies vermeidet die doppelte Reihe von horizontalen Linien, aber ich bin immer noch mit der statischen horizontals dass schneiden durch die Mitte von Zellen als die Tabellenansicht scrollt links.

Update 3: Haben Sie eine vage Theorie dies etwas ist, mit einer Zellenhöhe Konfigurationskonflikt oder Hintergrundfüllung Problem zu tun und so die horizontalen Linien unlackiert Pixel in der Tabellenansicht darstellen könnten. Ich bin nicht sicher, wie diese Theorie zu testen?

War es hilfreich?

Lösung

gefunden Lösung. Das Codebeispiel oben war von einer dritten Partei Monotouch Beispielanwendung im blogshere angenommen. Dieser Code scheint zwei vollständig überlappten UITableViews und die statischen Gitterlinien waren wahrscheinlich von dem leeren und tiefer UITableView in der z-Reihenfolge zu erstellen, die nicht reagieren auf jede Berührung Scroll Gesten haben.

Es gibt keine Notwendigkeit, manuell ein UITableView Objekt instanziiert, wie oben gezeigt, weil die UITableViewController Klasse tut dies für uns, so dass der AddSubview () Aufruf überflüssig.

Hier ist der Code, das funktioniert für mich:

public override void ViewDidLoad ()
{
    base.ViewDidLoad ();
    this.TableView.Source = new TableSource();
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top