앱 개발을 해보자 - ③ 버튼을 만들어보자

2019. 9. 24. 03:04안드로이드 개발

버튼을 만들어보자


시작하기 전에

 

우리는 다음과 같은 화면을 만들것입니다.

 

 

전체 코드는 다음과 같습니다

 

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:orientation="vertical"
              android:layout_gravity="center_vertical"
              tools:context=".MainActivity">

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World!"
            android:layout_gravity="center_horizontal"
            android:textSize="30sp" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/roll"
        android:layout_gravity="center_horizontal" />



</LinearLayout>

 

res/values/strings.xml

<resources>
    <string name="app_name">MySampleApp</string>
    <string name="roll">Roll</string>
</resources>

 

자, 그럼 위의 코드를 자세히 살펴볼까요?

layout 작성

Linear Layout이라는 뷰 그룹이 있습니다.

Linear Layout은 순차적으로 아래와같이 세로 또는 가로의 단일방향으로 하위요소들을 정렬합니다.

<LinearLayout
	xmlns:android="http://schemas.android.com/apk/res/android"
	xmlns:tools="http://schemas.android.com/tools"
	android:layout_width="match_parent" // match_parent 는 제한 내에서 화면을 꽉 채워줍니다.
	android:layout_height="wrap_content" // wrap_content 는 해당 레이아웃이 필요로 하는 부분까지만 채워줍니다.
	android:orientation="vertical" // 수직으로 content를 정렬 할 예정입니다.
	android:layout_gravity="center_vertical" // layout의 위치를 수직의 가장 중앙으로 위치시킵니다.
	tools:context=".MainActivity"> // MainActivity 에 해당 레이아웃을 표시합니다.
</LinearLayout>

 

텍스트와 버튼 생성

자, 이제 레이아웃을 생성했으니 텍스트와 버튼을 생성합시다.

    <TextView
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"
            android:text="Hello World!" // 텍스트
            android:layout_gravity="center_horizontal" // 텍스트의 레이아웃에서의 위치
            android:textSize="30sp" /> // 텍스트의 사이즈

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/roll" // Button의 text, res/values/string.xml 에서 값을 가져온다.
        android:layout_gravity="center_horizontal" /> // 버튼의 위치를 중앙으로

 

이렇게 레이아웃에 버튼을 생성해보았습니다.