티스토리 뷰

activity_main.xml을 사용하는 방법(1)

동작 개요

앱을 실행하면 텍스트 뷰에 '안녕하세요'를 표시

 

MainActivity.java

  • onCreate() 메서드를 사용하여 화면 초기화 및 필요한 데이터나 상태 복원, UI 구성
  • super.onCreate(savedInstanceState);로 MainActivity의 부모 클래스인 AppCompatActivity의 onCreate 메서드 호출
  • setContentView(R.layout.activity_main); 메서드를 사용하여 XML 레이아웃 파일인 activity_main.xml을 UI로 설정하여 Activity의 화면에 표시
package com.example.exam;

import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

 

activity_main.xml

  • 텍스트를 화면에 표시하는 UI 컴포넌트인 TextView를 사용
  • layout_width="match_parent"를 사용하여 TextView를 부모 컨테이너의 너비에 맞춤
  • layout_height="match_parent"를 사용하여 TextView를 부모 컨테이너의 높이에 맞춤
  • text="안녕하세요"로 안녕하세요라는 텍스트를 표시함
  • textSize="30sp"로 텍스트의 크기를 30sp로 설정(sp: 텍스트 크기 조정 단위)
  • gravity="center"로 TextView 내부에서 텍스트를 가운데 정렬함(gravity: 텍스트의 정렬 방식 정의)
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:text="안녕하세요"
    android:textSize="30sp"
    android:gravity="center" />

 

activity_main.xml을 사용하는 방법(1) 실행


 

activity_main.xml을 사용하는 방법(2)

동작 개요

앱을 실행하면 텍스트 뷰에 '반갑습니다'를 표시

 

MainActivity.java

  • TextView t로 TextView 변수 생성
  • findViewByID(R.id.tv);를 통해 xml 파일 내부에 있는 id가 tv인 TextView를 t에 할당
  • t.setText("반갑습니다");로 xml에서 지정했던 기존 텍스트를 반갑습니다로 변경
package com.example.exam;

import android.os.Bundle;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TextView t = findViewById(R.id.tv);
        t.setText("반갑습니다");
    }
}

 

 

activity_main.xml

  • text를 나타내지 않았지만, MainActivity.java에서 setText로 텍스트를 표시하였기 때문에 상관 없음
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tv"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:textSize="30sp"
    android:gravity="center" />

activity_main.xml을 사용하는 방법(2) 실행


 

MainActivity.java만 사용하는 방법(No XML)

주의할 점

activity_main.xml을 사용하지 않으려면 해당 파일을 미리 삭제해야 함

activity_main.xml의 Delete 창

 

동작 개요

앱을 실행하면 텍스트 뷰에 '환영합니다'를 표시

 

MainActivity.java

  • TextView 객체인 t 생성(클래스 내에서 자신을 의미하는 객체는 만들 수 없음, 대신 this를 사용)
  • t.setText("환영합니다");로 텍스트 설정
  • t.setTextSize(30);로 텍스트의 크기를 30sp로 설정
  • t.setGravity(Garvity.CENTER);로 텍스트를 가운데 정렬
  • setContentView(t); 메서드를 사용해서 t를 화면에 표시
package com.example.exam;

import android.os.Bundle;
import android.view.Gravity;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        TextView t = new TextView(this);
        t.setText("환영합니다");
        t.setTextSize(30);
        t.setGravity(Gravity.CENTER);

        setContentView(t);
    }
}

MainActivity.java만 사용하는 방법(No XML)

 

공지사항
링크