티스토리 뷰
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을 사용하는 방법(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" />
MainActivity.java만 사용하는 방법(No XML)
주의할 점
activity_main.xml을 사용하지 않으려면 해당 파일을 미리 삭제해야 함
동작 개요
앱을 실행하면 텍스트 뷰에 '환영합니다'를 표시
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);
}
}
'학업 > 모바일프로그래밍' 카테고리의 다른 글
[Android Studio] 이벤트 처리: 클릭 시 배경색 변경 (0) | 2024.10.20 |
---|---|
[Android Studio] LinearLayout 수직 배치하기 연습 (0) | 2024.10.20 |
[Android Studio] 화면에 텍스트 여러 개 표시하기 (0) | 2024.10.19 |
[Android Studio] 안드로이드 앱 구조 (0) | 2024.10.17 |
[Android Studio] 개발 환경 설치 (4) | 2024.10.15 |
공지사항
링크