안드로이드 개발 질문/답변
(글 수 45,052)
아래 처럼 구성한 xml 파일을 가지고 있습니다.
질문 1. listview 높이를 지정 안하고 android:layout_height="wrap_content" 속성을 주면 일부 내용이 LinearLayout 아래로 들어 갑니다.
혹시 고정 높이 지정 안하고도 아래쪽으로 안들어 가고 딱 경계 맞게 하는 방법 알려주세요.
<RelativeLayout>
<ListView>
</ListView>
<LinearLayout android:orientation="horizontal"
<ToggleButton>
</ToggleButton>
<ImageButton ToggleButton 오른쪽에 배치>
</ImageButton>
</LinearLayout>
</RelativeLayout>
2011.01.13 23:20:33
RelativeLayout이군요 이걸 기준으로 말씀을 드리자면 밑의 Linear 레이아웃을 먼저 만들어 줍니다.(xml코드상에서 위치를 ListView가 LinearLayout 밑으로 보내라는 말입니다.)그리고 ListView의 높이는 fill_parent로 넣어주시면됩니다.
2011.01.14 10:02:23
RelativeLayout을 쓰셨잖아요 RelativeLayout을 왜 쓰신건가요? 기준이 되는 뷰가 있고 그 뷰에 상대적으로 위치를 지정하기 위해서가 아닌가요? RelativeLayout은 코드 순서에 관계없이 뷰들의 관계에 의해 위치를 지정합니다. 코드순서에 맞춰서 하시려면 LinearLayout을 쓰셨어야죠
LinearLayout을 위에 올리시고 gravity를 bottom으로 주신뒤에 ListView를 LinearLayout위에 있다고 선언해주시면 됩니다.
그리고 이런 형태라면 RelatvieLayout을 쓸 이유가 없어보이는군요 RelativeLayout으로 위치를 잡는건 상대적으로 시간이 많이 소요됩니다. 뷰계층이 깊어져서 계층을 줄이고자 할때나 특수한 상황이 아니면 LinearLayout이 좋겠죠



