
1. 리소스의 종류와 특징
- 안드로이드 앱을 만들면 res 폴더 안에 자동을 생기는 파일입니다.
- 모든 리소스들을 관리함 (drawable. layout, mipmap, values)
- 파일을 직접 추가해서 리소스 추가할 수 있음.
- layout 디렉터리: 레이아웃 리소스
- drawable 디렉터리: 이미지 리소스
- mipmap 디렉터리: 실행 아이콘 리소스
- values 디렉터리: 값 리소스
- 대문자 사용 x
- "@ 경로"

1. 안드로이드에서 제공하는 리소스
- "@android:경로"

2. 스트링 바꿔보기
- Libraries - values - string

2. 리소스 조건 설정
1. minmap


- 똑같은 이름의 이미지 파일들이 각각 저장되어 있다.
- 기기별로 이미지 크기를 갖고 있어서 조건에 맞춘 리소스를 가져온다.
- 지정할 필요없이 조건별로 맞게 가져온다.
- 'minmap-조건' 으로 내가 만들 수 있다.

2. 리소스 조건 설정
- 개발자가 주는 조건에 따라 자동으로 반영이 된다.



3. 화면 회전에 대응하기
- 방향에 따라 화면을 다르게 제공
- 리소스 조건으로 설정하여 처리
2.2 실습
0. 버전 맞추기

1. 이미지 다운
- drawable 폴더에 준비해 두기

2. activity_main
3. values
4. acivity_main 하나더! (가로/세로 버전)


- oriental 선택해서 반영하면 화면이 바뀌고 이렇게

- 한 화면이라도 조건에 따라 다르게 나타나는 것을 만들겠다.


5. 한글/영어 호환



<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Ch9_Resource</string>
<string name="intro_main"> Messenger에서 휴대폰 연락처에 있는 사람들을 찾아보세요 </string>
<string name="intro_detail"> 연락처를 계속 업로드하면 Facebook 및 Messenger에서 연결된 연락처를 추천하고 회원님과 다른 사람들에게 더욱 관련성 높은 광고를 표시하여 더 나은 서비스를 제공하는 데 도움이 됩니다. </string>
<string name="intro_more">더 알아보기</string>
<string name="intro_button">설정</string>
<string name="intro_delay">나중에 하기</string>
</resources>
안드로이드실행기에서 한국어권 설정하기
setting - System - Language - SystemLanguage - add a language - 한국어 - 한국어 우선순위 수정

6. 이미지 : drawable : xml이미지 만들기




7. 색깔


2.3 고급 위젯 ( = 뷰)
- 프로그래스바: 작업의 진행 상태극 바 또는 원 형태로 제공
- 시크바: 사용자가 터치로 임의 조절이 가능함
- 레이팅바: 진행 상태를 별 모양으로 표시

- ?android:attr/progressBarStyle

3. 폰 크기의 호환성
1. 논리적인 단위 알아보기
- dpi는 dots inch의 줄임마로 1인치 안에 도트의 개수
- 크기 지정에 사용할 수 있는 단위
- dp : 스크린의 물리적 밀도
- sp : 글꼴 크기에 적용
- pt : 스크린의 1/72 = 1pt
- px : 픽셀
- mm : 밀리미터
- in: 인치

2. 화면 정보 가져오기

4. 메신저 앱의 인트로 화면 만들기
1. 뷰바인딩
- 레이아웃에 대한 클래스를 만듦.
- 이름을 가지고 클래스를 만든다. ( activity_main.xml -> ActivityMainBinding )
- 뷰 바인딩에서 클래스를 자동으로 만들어줌
- 코드를 추가하고 글래드 버전 맞춤

2. id값 주기

3. activity 주기


4. 디버깅 하기 (print)

'SPECIALIZED > Android' 카테고리의 다른 글
| 9. 다이얼로그 이용하기 (0) | 2025.04.13 |
|---|---|
| 8. 안드로이드 프로그래밍 사용자 이벤트 처리하기 (0) | 2025.04.13 |
| 6. 뷰를 배치하는 레이아웃 (0) | 2025.03.27 |
| 5. 뷰를이용한화면구성 (0) | 2025.03.27 |
| 4. XML소개 (0) | 2025.03.24 |