Ich habe ein GridView mit TextViews in meiner App und aus irgendeinem Grund wird die letzte Spalte abgeschnitten (siehe Screenshot unten). Ich vermute, es hat etwas mit dem kleinen Spalt auf der linken Seite von GridView zu tun, aber ich weiß nicht, was das verursacht.
Ich habe den GridView-Hintergrund etwas dunkler gemacht als den Fragmenthintergrund.
Mein Code:
layout / fragment.xml:
%Vor%getView vom Adapter:
%Vor%Entfernen Sie die Attribute android: layout_marginStart und android: layout_marginEnd und sie werden nicht mehr außerhalb der Grenzen verschoben.
Sie möchten columnWidth
auf 60dp setzen und indem Sie auto_fit
num_columns
Eigenschaft verwenden, misst die GridView
die Anzahl der Spalten. In Ihrem Adapter erzwingen Sie dann die Artikelgröße, die dann nicht mit der GridView
Breite und Anzahl der Spalten übereinstimmt.
Hier ist eine Möglichkeit, die tatsächliche columnWidth
zu berechnen, die passt. Nicht 100% sicher, ob die Mathematik hier korrekt ist, aber hoffentlich gibt dies dir einen Anhaltspunkt, dein Problem zu lösen.
Wenn Elemente rechteckig sein sollen, könnten Sie die berechnete Breite an den Adapter übergeben und diese für die Breite und Höhe des Ansichtslayouts verwenden.
Aktivität:
%Vor%Xml:
%Vor%