2017-08-28 16 views
5

chcę użyć GridView i zgodnie z documentation, w adapterze można wykorzystać tę linię w adapterze:GridView.LayoutParams nie istnieje w Kotlin?

imageView.setLayoutParams(new GridView.LayoutParams(85, 85)); 

dobrze, przekształcając go w Kotlin, to mówi:

enter image description here

It działa w Javie, ale nie w Kotlin.

Dlaczego tak jest? A jak mogę użyć GridView.LayoutParams w Kotlin?

+3

Powiązane: https://stackoverflow.com/questions/45703751/how-to-set-layout-params-on-an-imageview-inside-gridview-in-android – BakaWaii

Odpowiedz

7

Spróbuj wykonać jedną z następujących czynności:

imageView.setLayoutParams(AbsListView.LayoutParams(85, 85)) 
imageView.setLayoutParams([email protected](85, 85)) 

Od GridView nie ma to własna implementacja LayoutParams, musisz wybrać implementację swojej nadklasy AbsListView. Możesz zdecydować, czy chcesz dodać prefiks [email protected].

3

GridView robi się wewnętrzna klasa LayoutParams, używa AbsListView.LayoutParams

więc wystarczy zmienić kod do

imageView.layoutParams = AbsListView.LayoutParams(85,85)