Android GridView letzte Spalte wird abgeschnitten

8

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.

Was mache ich hier falsch?

Ich habe den GridView-Hintergrund etwas dunkler gemacht als den Fragmenthintergrund.

Mein Code:

layout / fragment.xml:

%Vor%

getView vom Adapter:

%Vor%     
Tako 24.07.2016, 20:20
quelle

2 Antworten

1

Entfernen Sie die Attribute android: layout_marginStart und android: layout_marginEnd und sie werden nicht mehr außerhalb der Grenzen verschoben.

    
var firstName 04.08.2016, 19:56
quelle
1

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%     
Niko 02.08.2016 04:42
quelle

Tags und Links