Linear Layout
LinearLayout
is a ViewGroup
that displays child View
elements in a linear direction, either vertically or horizontally.
지나친 LinearLayout
사용에 주의를 할 필요가 있습니다.중첩된 여러 LinearLayout
들을 사용하려면, RelativeLayout
사용을 고려할 수 있습니다.
- HelloLinearLayout.라는 이름의 새로운 프로젝트를 생성합니다.
res/layout/main.xml
를 열어 삽입합니다.<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1">
<TextView
android:text="red"
android:gravity="center_horizontal"
android:background="#aa0000"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"/>
<TextView
android:text="green"
android:gravity="center_horizontal"
android:background="#00aa00"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"/>
<TextView
android:text="blue"
android:gravity="center_horizontal"
android:background="#0000aa"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"/>
<TextView
android:text="yellow"
android:gravity="center_horizontal"
android:background="#aaaa00"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1">
<TextView
android:text="row one"
android:textSize="15pt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<TextView
android:text="row two"
android:textSize="15pt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<TextView
android:text="row three"
android:textSize="15pt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<TextView
android:text="row four"
android:textSize="15pt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
</LinearLayout>신중하게 XML을 확인하십시요.
LinearLayout
는 최상위 입니다.that defines its orientation to be vertical—all childView
s (of which it has two) will be stacked vertically. The first child is anotherLinearLayout
that uses a horizontal orientation and the second child is aLinearLayout
that uses a vertical orientation. Each of these nestedLinearLayout
s contain severalTextView
elements, which are oriented with each other in the manner defined by their parentLinearLayout
.- Now open
HelloLinearLayout.java
and be sure it loads theres/layout/main.xml
layout in theonCreate()
method:public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}The
setContentView(int)
method loads the layout file for theActivity
, specified by the resource ID —R.layout.main
refers to theres/layout/main.xml
layout file. - Run the application.
You should see the following:

Notice how the XML attributes define each View's behavior. Try experimenting with different values for android:layout_weight
to see how the screen real estate is distributed based on the weight of each element. See the Common Layout Objects document for more about how LinearLayout
handles the android:layout_weight
attribute.
References
'Android' 카테고리의 다른 글
WebView (0) | 2011.06.09 |
---|---|
안드로이드 스터디 시작! (0) | 2011.06.09 |