Wie Sie angeben, android:listSelector="@null" programmatisch?
Aus irgendeinem Grund, hatte ich nicht extra den Raum um sich herum gridview-Spalte grenzt im emulator aber herausgefunden, dass die zusätzlichen Pixel in meiner realen Gerät (Galaxy S). So würde ich mag, um zu versuchen:
android:listSelector="@null"
programmgesteuert.
Ich weiß, seine Verwandte Methode ist setSelector
. Aber welche Nummer oder-id sollte ich für "@null"
? Ich habe versucht 0
aber es machte app Abstürzen.
UPDATE: ich habe das problem gelöst, indem meine eigenen Selektor.
- Wenn Sie möchten, unset die
listSelector
drawable, verwenden SiesetSelector(null)
stattsetSelector(0)
. Aber ich bin nicht sicher, dass es wird Ihnen helfen, mit Ränder/padding. - Oops... Wirklich, es hat nicht funktioniert, sorry. Haben Sie versucht, unterschiedliche hintergrund-Farben für jedes GridView Kind-element heraus, das das Teil, welches Elemente sind, die zusätzlichen Pixel?
- Das ist merkwürdig. Ich habe ein wenig experimentiert und jetzt mit default-Liste Elementauswahl, ich habe ein one-pixel-Abstand zwischen den Zeilen, nicht aber Spalten. Wahrscheinlich ist diese version-abhängigen Verhalten. Sowieso, wenn die Einstellung
listSelector
zu@null
oder@android:color/transparent
die Grenze gegangen. Also, warum nicht Sie verwenden ein geeignetes layout für dieGridView
? Auch wenn Sie möchten, erstellen Sie programmgesteuert, Sie immer können verwendenGridView.inflate()
. So brauchen Sie nicht zu verwendensetSelector()
Methode, hat möglicherweise einen Fehler. - Freut mich zu hören. Sie konnte immer noch android.R.Farbe.transparent wie ein Selektor, der Anwendungen zu reduzieren-Ressourcen.
- Ich denke, Sie übertreiben 🙂 Und das beste, Dank -, jemandem zu helfen hier.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden:
Wird, deaktivieren Sie die Auswahl":)
Verwenden