Avoid passing null as the view root

LayoutManager로 직접 View를 생성할때 가끔 이런 경고를 볼 수 있다.
Avoid passing null as the view root (needed to resolve layout parameters on the inflated layout's root element)


LayoutInflater는 View를 생성할때 자신의 레이아웃을 잡기위해 부모 View가 필요하다.
이때 부모 View를 알려주지 않으면 (null을 넘기면), 부모를 알 수 없기 때문에 layout xml에 정의한 android:layout_xxxxx 값들은 모두 무시된다.

<GridView
  android:id="@+id/grid"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:layout_margin="10dp"
  android:padding="5dp"
  android:visibility="invisible"
  android:numColumns="2" />

지금 보는 GridView에서는 layout_width, layout_height, layout_margin이 무시되고 padding, visibility, numColumns는 적용 됨.

LayoutInfalter 자세히 보기

Juyeong Lee

Read more posts by this author.