1. activity 이름 변경하는 법
: manifest에서 name 부분 우클릭하고 refactor > rename
2. 리소스 파일 재정의
1) 앱 이름 변경 : My Android App 부분을 변경하기 (res>values>strings)
<resources>
<string name="app_name">My Android App</string>
</resources>
2) 앱 실행 화면에서 표시되는 문자열을 변경하는 방법 1
: res/layout/start_activity_view.xml에 기술된 TextView 위젯의 android:text 속성 값을 직접 변경하기
(-) 하드코딩으로 한국어를 사용했을 때 다국어 지원에서 문제가 생김...
-> resource 파일에서 한글은 _kr로 만들고, string 파일을 또 만들어 다른 언어들을 각각 담게 작성하기 (@ 예시 찾기)
<TextView
// android:layout_width="wrap_content"
// android:layout_height="wrap_content"
android:text="Hello World!"
3) 앱 실행 환경에서 표시되는 문자열을 변경하는 방법 2
: res/values/strings.xml 파일에 새로운 문자열 리소스 정의하고,
그 문자열 리소스를 res/layout/start_activity_view.xml에 기술된 TextView 위젯의 android:text 속성 값으로 지정
<resources>
...
<string name="app_content_text">안드로이드 수강생 여러분 안녕하세요?</string>
</resources>
<TextView
// android:layout_width="wrap_content"
// android:layout_height="wrap_content"
android:text="@string/app_content_text"
3. 주사위 앱 만들기
package com.example.lab3_dice
import android.os.Bundle
import android.util.Log
import android.widget.Button
import android.widget.TextView
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import kotlin.random.Random
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
val tv_num = findViewById<TextView>(R.id.tv_number)
//findViewById : Roll the Dice 를 id를 가지고 찾겠다는 뜻
//<> 속 : 어떤 것을 가져올건지. 타입
//() 속 : 리소스 이름
val btn_dice = findViewById<Button>(R.id.btn_roll)
btn_dice.setOnClickListener {
//버튼이 눌렸을 떄를 표현
val random = Random
val num = random.nextInt(6) + 1
//6까지인데 시작 값이 1임
//textview에 표시
tv_num.text = num.toString()
//int로 받아오기 때문에 넣기 전에 string으로 바꿔줘야 함
//textview에 text 쓸 때는 .text 하면 됨
Log.d("MainActivity", "num = ${num.toString()}")
//logcat 누르고 roll 여러 번 누른 뒤 아래 화살표 누르면 내려감
}
}
}
'Android Studio' 카테고리의 다른 글
[Android 앱개발 입문] 위젯 (# 추가하기) (0) | 2024.03.18 |
---|---|
[Android 앱개발 입문] 안드로이드 UI 기본 (@ 추가하기) (0) | 2024.03.18 |
[Android 앱개발 입문] 프로젝트 빌드 (@ 추가하기) (0) | 2024.03.18 |
[Android 앱개발 입문] 리소스 파일, 코틀린 소스 파일 (# 추가하기) (0) | 2024.03.18 |
[Android 앱개발 입문] 프로젝트 구조 - 앱 구성 파일 분석, 매니페스트 파일 (# 추가하기) (0) | 2024.03.18 |