*/Android

[μ•ˆλ“œλ‘œμ΄λ“œ] β‘‘ Palette

sssbin 2022. 9. 28. 02:00

 

πŸ“Œ View

- λͺ¨λ“  λ·°λ“€μ˜ λΆ€λͺ¨ 클래슀 -> View ν΄λž˜μŠ€κ°€ 가지고 μžˆλŠ” ν•„λ“œλ‚˜ λ©”μ†Œλ“œλŠ” λͺ¨λ“  λ·°μ—μ„œ κ³΅ν†΅μ μœΌλ‘œ μ‚¬μš© κ°€λŠ₯

- λͺ¨λ“  λ·°λŠ” μ •μˆ˜λ‘œ 된 id(μ‹λ³„μž)λ₯Ό κ°–λŠ”λ‹€.

- 뷰의 크기: match_parent, wrap_content, 숫자 지정

- 뷰의 배경색: background 속성 λ³€κ²½ (16μ§„μˆ˜λ‘œ RGB κ°’ ν‘œμ‹œ)

- 뷰의 ν‘œμ‹œ μ—¬λΆ€: visibility 속성 μ„€μ • (0-visible, 1-invisible, 2-gone)

- padding: 뷰와 μ½˜ν…μΈ μ™€μ˜ 간격

- margin: μ»¨ν…Œμ΄λ„ˆμ™€ λ·°μ™€μ˜ 간격

 

 

1. TextView

- ν™”λ©΄μ—μ„œ ν…μŠ€νŠΈλ₯Ό ν‘œμ‹œν•  λ•Œ μ‚¬μš©

text ν‘œμ‹œν•  ν…μŠ€νŠΈ
textSize ν…μŠ€νŠΈμ˜ 크기 지정
textColor ν…μŠ€νŠΈμ˜ 색상 지정
textStyle ν…μŠ€νŠΈμ˜ μŠ€νƒ€μΌ 지정
(bold, italic, bolditalic)
fontFamily ν…μŠ€νŠΈμ˜ 폰트 지정
gravity ν…μŠ€νŠΈκ°€ λ‚˜νƒ€λ‚  μœ„μΉ˜ 지정
height ν…μŠ€νŠΈλ·°μ˜ 높이 μ„€μ •
hint ν…μŠ€νŠΈλ·°κ°€ λΉ„μ–΄μžˆμ„ λ•Œ λ‚˜νƒ€λ‚  문자 μ„€μ •

 

 

2. Button

- μ‚¬μš©μžκ°€ ν„°μΉ˜ν•  λ•Œ λ°œμƒν•˜λŠ” 클릭 이벀트 처리

- ν…μŠ€νŠΈ or μ•„μ΄μ½˜ or ν…μŠ€νŠΈ+μ•„μ΄μ½˜

- TextView 상속 -> TextViewμ—μ„œ μ •μ˜λœ λŒ€λΆ€λΆ„μ˜ 속성듀을 μ‚¬μš©ν•  수 μžˆλ‹€.

 

 

3. ImageView

- ν™”λ©΄μ—μ„œ 이미지λ₯Ό ν‘œμ‹œν•  λ•Œ μ‚¬μš©

src 이미지(drawable)의 λ¦¬μ†ŒμŠ€ ID 지정
tint μ΄λ―Έμ§€μ˜ λ°°κ²½ 색상 지정
scaleType 8가지 μ˜΅μ…˜κ°’μ— 따라 이미지 λΉ„μœ¨, 크기 등이 λ‹€λ₯΄κ²Œ 좜λ ₯
adjustViewBounds true -> κ°€λ‘œμ„Έλ‘œ λΉ„μœ¨ μœ μ§€

 

 

4. RecyclerView

- λ§Žμ€ 수의 데이터 집합을 μ œν•œλœ μ˜μ—­ λ‚΄μ—μ„œ μœ μ—°ν•˜κ²Œ ν‘œμ‹œ

- ViewHolder νŒ¨ν„΄μ„ κ΅¬ν˜„ν•˜μ—¬ μ•„μ΄ν…œμ„ ν‘œμ‹œν•˜κΈ° μœ„ν•΄ μƒμ„±ν•œ λ·°λ₯Ό μž¬μ‚¬μš©ν•œλ‹€.

- 뷰홀더 κ°μ²΄λŠ” Adapterμ—μ„œ κ΄€λ¦¬ν•œλ‹€. 데이터듀을 κ΄€λ¦¬ν•œλ‹€.

- LayoutManagerλ₯Ό ν†΅ν•΄μ„œ 각 μ•„μ΄ν…œμ„ λ‹€μ–‘ν•˜κ²Œ λ°°μΉ˜ν•  수 μžˆλ‹€.

orientation λ°©ν–₯(κ°€λ‘œ, μ„Έλ‘œ) μ„€μ •
overScrollMode λκΉŒμ§€ μŠ€ν¬λ‘€ν–ˆμ„ λ•Œ λ³΄μ—¬μ§€λŠ” μ• λ‹ˆλ©”μ΄μ…˜ μ„€μ •
(never, allways, ifContentScrolls)

 

 

5. FragmentContainerView

- Fragmentλ₯Ό μœ„ν•΄ μ„€κ³„λœ λ ˆμ΄μ•„μ›ƒμœΌλ‘œ, Fragment의 container둜 μ‚¬μš©λœλ‹€.

- FrameLayout을 ν™•μž₯ν•˜μ—¬ ν”„λž˜κ·Έλ¨ΌνŠΈ νŠΈλžœμž­μ…˜μ„ μ•ˆμ •μ μœΌλ‘œ μ²˜λ¦¬ν•  수 있고, ν”„λž˜κ·Έλ¨ΌνŠΈ λ™μž‘μ„ μ‘°μ •ν•  μˆ˜λ„ μžˆλ‹€.

name Fragment μΆ”κ°€

 

 

6. ScrollView

- ν•œ 화면에 λ§Žμ€ 뷰듀을 보여주지 λͺ»ν•  λ•Œ μ‚¬μš©

- μŠ€ν¬λ‘€λ·°μ—λŠ” 단 ν•˜λ‚˜μ˜ μœ„μ ―λ§Œ 넣을 수 μžˆλ‹€. -> 보톡 LinearLayout으둜 μ›ν•˜λŠ” μœ„μ ―μ„ κ°μ‹Έμ„œ μ‚¬μš©

- μ„Έλ‘œ λ°©ν–₯ 슀크둀 -> ScrollView, κ°€λ‘œ λ°©ν–₯ 슀크둀 -> HorizontalScrollView

scrollbarFadeDuration μŠ€ν¬λ‘€λ°”κ°€ μ‚¬λΌμ§€λŠ” μ‹œκ°„μ„ μ„€μ •
(0 -> 사라지지 μ•ŠμŒ)
VerticalScrollbarPosition μŠ€ν¬λ‘€λ°”μ˜ μœ„μΉ˜ λ³€κ²½
scrollbarSize μŠ€ν¬λ‘€λ°”μ˜ λ‘κ»˜ μ‘°μ •
scrollbarThumbVertical (수직 μŠ€ν¬λ‘€λ°”)
scrollbarThumbHorizontal (μˆ˜ν‰ μŠ€ν¬λ‘€λ°”)
μŠ€ν¬λ‘€λ°”μ˜ 색상 λ˜λŠ” κ·Έλ¦Ό λ³€κ²½

 

 

7. Switch

- on/off μƒνƒœ μ„€μ •

showText ν…μŠ€νŠΈκ°€ 보일지 μ•ˆ 보일지 κ²°μ •
switchAppearance on/off ν…μŠ€νŠΈμ˜ μŠ€νƒ€μΌ 지정
textOff μŠ€μœ„μΉ˜κ°€ off μƒνƒœμΌ λ•Œ ν‘œμ‹œλ  ν…μŠ€νŠΈ 지정
textOn μŠ€μœ„μΉ˜κ°€ on μƒνƒœμΌ λ•Œ ν‘œμ‹œλ  ν…μŠ€νŠΈ 지정

 

 

8. ImageButton

- 이미지λ₯Ό 좜λ ₯ν•˜λŠ” λ²„νŠΌ

- ImageView 상속 -> ImageViewμ—μ„œ μ •μ˜λœ λŒ€λΆ€λΆ„μ˜ 속성듀을 μ‚¬μš©ν•  수 μžˆλ‹€.

 

 

9. ChipGroup & Chip

- μž…λ ₯, 속성 λ˜λŠ” λ™μž‘μ„ λ‚˜νƒ€λ‚΄λŠ” μ»΄νŒ©νŠΈν•œ μš”μ†Œ -> ν•„터링 μ„€μ •μ΄λ‚˜ μž‘μ€ ν…μŠ€νŠΈλ₯Ό λ³΄μ—¬μ£ΌλŠ”λ° μœ μš©ν•˜λ‹€.

- Action, Entry, Filter, Choice

 

 

10. CheckBox

- μ‚¬μš©μžκ°€ μ„ΈνŠΈμ—μ„œ ν•˜λ‚˜ μ΄μƒμ˜ μ˜΅μ…˜μ„ 선택할 수 μžˆλ‹€.

- "선택됨(checked)"κ³Ό "μ„ νƒλ˜μ§€ μ•ŠμŒ(unchecked)"

checked μ²΄ν¬λ°•μŠ€μ˜ 졜초 선택 μ—¬λΆ€ 지정
(true -> μžλ™ 선택)

 

 

11. RadioGroup & RadioButton

- μ‚¬μš©μžκ°€ μ„ΈνŠΈμ—μ„œ ν•œ κ°€μ§€μ˜ μ˜΅μ…˜λ§Œ 선택할 수 μžˆλ‹€.

- λΌλ””μ˜€ κ·Έλ£Ή 내에 λΌλ””μ˜€ λ²„νŠΌ 쑴재 -> 리슀트 쀑 ν•œ 가지 선택

orientation 리슀트 μ •λ ¬ 방식 (horizontal, vertical)

 

 

12. FloatingActionButton

- μ•± UI의 κΈ°λ³Έ μž‘μ—…μ„ νŠΈλ¦¬κ±°ν•˜λŠ” μ›ν˜• λ²„νŠΌ

- 화면을 움직여도 FAB λ²„νŠΌμ€ ν™”λ©΄μ˜ μ΅œμƒμœ„μ— κ³ μ •λ˜μ–΄ μžˆλ‹€.

fabsize 크기 지정
(mini, normal)
rippleColor λ¦¬ν”Œ 색상 지정 
src μ•„μ΄μ½˜ 지정

 

 

13. WebView

- ν”„λ ˆμž„μ›Œν¬μ— λ‚΄μž₯된 μ›Ή λΈŒλΌμš°μ € μ»΄ν¬λ„ŒνŠΈλ‘œ 뷰의 ν˜•νƒœλ‘œ 앱에 μž„λ² λ”©ν•˜λŠ” 것

- μ•± λ‚΄μ—μ„œ HTML을 ν˜ΈμΆœν•˜μ—¬ μ›Ή νŽ˜μ΄μ§€λ₯Ό λΆˆλŸ¬μ˜€λŠ” 것이닀. 

setJavaScriptEnabled javascript의 μ‹€ν–‰ μ—¬λΆ€ μ„€μ •
setJavaScriptCanOpenWindowsAutomatically javascriptκ°€ window.open()을 μ‚¬μš©ν•  수 μžˆλ„λ‘ μ„€μ •
setLoadsImagesAutomatically μ›Ήλ·°κ°€ 앱에 λ“±λ‘λ˜μ–΄ μžˆλŠ” 이미지 λ¦¬μ†ŒμŠ€λ₯Ό μžλ™μœΌλ‘œ λ‘œλ“œν•˜λ„λ‘ μ„€μ •
setUseWideViewPort μ›Ήλ·°κ°€ wide viewportλ₯Ό μ‚¬μš©ν•˜λ„λ‘ μ„€μ •
setSupportZoom ν™•λŒ€, μΆ•μ†Œ κΈ°λŠ₯ μ‚¬μš©
setCacheMode μ›Ήλ·°μ˜ μΊμ‹œ λͺ¨λ“œλ₯Ό μ„€μ • 
setDomStorageEnabled 둜컬 μŠ€ν† λ¦¬μ§€ μ‚¬μš© μ—¬λΆ€λ₯Ό μ„€μ •
setAppCacheEnabled μ•± λ‚΄λΆ€ μΊμ‹œ μ‚¬μš© μ—¬λΆ€ μ„€μ •
setAllowFileAccess 파일 μ•‘μ„ΈμŠ€ ν™œμ„±ν™” μ—¬λΆ€ μ„€μ •

 

 

14. ProgressBar

- μ•± λ‚΄μ—μ„œ μ–΄λ–€ μž‘μ—…μ΄ μˆ˜ν–‰λ  λ•Œ κ·Έ μž‘μ—…μ˜ 진행 μƒνƒœλ₯Ό μ‹œκ°μ μœΌλ‘œ 보여쀀닀.

- λΆˆν™•μ •μ (μž‘μ—… 진행이 μ–Έμ œ μ™„λ£Œλ  것인지 μ •ν™•ν•˜κ²Œ 계산할 수 μ—†λŠ” 경우, κΈ°λ³Έλ™μž‘λͺ¨λ“œ)

- 확정적(μž‘μ—… 진행 μƒνƒœλ₯Ό ν‘œμ‹œ, style μ†μ„±μ—μ„œ Widget_ProgressBar_horizontal 지정 및 progress 속성 κ°’ 지정)

max μ΅œλŒ€κ°’ 지정
progress μž‘μ—… 진행 μƒνƒœμ˜ 값을 지정  (default κ°’)
(μ•± μ‹€ν–‰ 쀑 setProgress() ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ 값을 λ°”κΏ€ 수 μžˆλ‹€.)

 

 

15. SeekBar

- μ‚¬μš©μžκ°€ λ²”μœ„ λ‚΄μ—μ„œ 값을 선택할 수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” λ§‰λŒ€ ν˜•νƒœμ˜ λ·°

- λ³Όλ₯¨ 쑰절, λ™μ˜μƒ μž¬μƒ 등에 λŒ€ν‘œμ μœΌλ‘œ μ‚¬μš©ν•œλ‹€.

- ProgressBar 상속 -> ProgressBarμ—μ„œ μ •μ˜λœ λŒ€λΆ€λΆ„μ˜ 속성듀을 μ‚¬μš©ν•  수 μžˆλ‹€.

 

 

16. Spinner

- κ°’ μ§‘ν•©μ—μ„œ ν•˜λ‚˜μ˜ 값을 선택할 수 μžˆλŠ” λΉ λ₯Έ 방법을 μ œκ³΅ν•œλ‹€.

- κΈ°λ³Έ μƒνƒœμ˜ μŠ€ν”Όλ„ˆλŠ” ν˜„μž¬ μ„ νƒλœ 값을 ν‘œμ‹œν•œλ‹€.

- μŠ€ν”Όλ„ˆλ₯Ό ν„°μΉ˜ν•˜λ©΄ 기타 λͺ¨λ“  μ‚¬μš©ν•œ 값을 ν¬ν•¨ν•˜λŠ” λ“œλ‘­λ‹€μš΄ 메뉴가 ν‘œμ‹œλ˜λ©°, μ—¬κΈ°μ„œ μƒˆ 값을 선택할 수 μžˆλ‹€.

dropDownSelector λ“œλ‘­λ‹€μš΄ λ””μŠ€ν”Œλ ˆμ΄μ—μ„œ μ‚¬μš©ν•  μ…€λ ‰ν„° λ‚˜μ—΄
spinnerMode λ””μŠ€ν”Œλ ˆμ΄ λͺ¨λ“œ μ„€μ •
prompt μŠ€ν”Όλ„ˆμ˜ λ‹€μ΄μ–Όλ‘œκ·Έκ°€ λ³΄μ—¬μ§ˆ λ•Œ ν‘œμ‹œν•  ν”„λ‘¬ν”„νŠΈ

 

 

17. HorizontalScrollView

- μˆ˜ν‰ λ°©ν–₯ ScrollView

fillViewPort μŠ€ν¬λ‘€λ·°κ°€ 뷰포트λ₯Ό μ±„μš°λ„λ‘ μ½˜ν…μΈ λ₯Ό ν™•μž₯할지 μ—¬λΆ€λ₯Ό μ„€μ •

 

 

18. NestedScrollView

- μ€‘μ²©λœ μŠ€ν¬λ‘€μ„ μ§€μ›ν•˜λŠ” ScrollView