Android studio programming

(22.12.03)Android ν”„λ‘œκ·Έλž˜λ° : 기타 λ ˆμ΄μ•„μ›ƒ - λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒ, ν”„λ ˆμž„λ ˆμ΄μ•„μ›ƒ, ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒ, κ·Έλ¦¬λ“œλ ˆμ΄μ•„μ›ƒ

ν”„λ‘œκ·Έλž˜λ¨Έ μ˜€μ›” 2022. 12. 3.

β—β—λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒβ—β—

 

λ λŸ¬ν‹°λΈŒ λ ˆμ΄μ•„μ›ƒμ€ μƒλŒ€ λ ˆμ΄μ•„μ›ƒμ΄λΌκ³ λ„ ν•˜λ©°, μ΄λ¦„μ²˜λŸΌ λ ˆμ΄μ•„μ›ƒ 내뢀에 ν¬ν•¨λœ μœ„μ ―μ„ μƒλŒ€μ μΈ μœ„μΉ˜λ‘œ λ°°μΉ˜ν•œλ‹€. λ ˆλŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒ μ•ˆμ— ν¬ν•¨λœ μœ„μ ―μ€ λ λŸ¬ν‹°λΈŒ λ ˆμ΄μ•„μ›ƒμ˜ 어디쯀에 μœ„μΉ˜μ‹œν‚¬ 것인지 μ§€μ •ν•΄μ•Όν•œλ‹€. λ λŸ¬ν‹°λΈŒ λ ˆμ΄μ•„μ›ƒμ— μžˆλŠ” μœ„μ ―μ˜ μœ„μΉ˜μ™€ κ΄€λ ¨λœ 속성은 크게 두 λΆ„λ₯˜λ‘œ λ‚˜λˆŒ 수 μžˆλ‹€. λ λŸ¬ν‹°λΈŒ λ ˆμ΄μ•„μ›ƒμ˜ μƒν•˜μ’Œμš°μ— λ°°μΉ˜ν•˜λŠ” κ²½μš°μ™€ λ‹€λ₯Έ μœ„μ ―μ˜ μƒλŒ€ μœ„μΉ˜μ— λ°°μΉ˜ν•˜λŠ” κ²½μš°κ°€ μžˆλ‹€.

 

β‘ λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒμ˜ μƒν•˜μ’Œμš°μ— 배치

λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒ μ•ˆμ— ν¬ν•¨λœ μœ„μ ―μ˜ 속성 쀑 λΆ€λͺ¨(λ ˆμ΄μ•„μ›ƒ)의 μ–΄λŠ μœ„μΉ˜μ— λ°°μΉ˜ν• μ§€λ₯Ό κ²°μ •ν•˜λŠ” 속성은 λͺ¨λ‘ 7가지이닀.

λΆ€λͺ¨(λ ˆμ΄μ•„μ›ƒ)의 μœ„μΉ˜λ₯Ό μ μš©ν•  λ•Œμ˜ 속성

λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒμ— μžˆλŠ” μœ„μ ―μ„ λΆ€λͺ¨(λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒ)의 μ–΄λŠ 뢀뢄에 μœ„μΉ˜μ‹œν‚¬μ§€λ₯Ό 보여쀀닀. 각 μ†μ„±μ˜ 값은 true λ˜λŠ” false이닀. 예λ₯Ό λ“€μ–΄ μš°μΈ‘ν•˜λ‹¨μ— μœ„μ ―μ„ λ°°μΉ˜ν•˜λ €ν•˜λ©΄ layout_alignParentBottom κ³Ό layout_alignParentRight 속성에 trueλ₯Ό μ„€μ •ν•˜λ©΄ λœλ‹€.

 

 

 

β‘‘λ‹€λ₯Έ μœ„μ ―μ˜ μƒλŒ€ μœ„μΉ˜μ— 배치

λ λŸ¬ν‹°λΈŒλ ˆμ΄μ•„μ›ƒ μ•ˆμ—μ„œ λ‹€λ₯Έ μœ„μ ―μ˜ νŠΉμ •ν•œ 곳에 λ°°μΉ˜ν•˜λŠ” 방법도 μžˆλ‹€. λ‹€λ₯Έ μœ„μ ―κ³Ό κ΄€λ ¨λœ 속성은 λ‹€μŒκ³Ό κ°™λ‹€.

λ‹€λ₯Έ μœ„μ ―μ˜ μƒλŒ€μ μΈ μœ„μΉ˜λ₯Ό μ μš©ν•  λ•Œμ˜ 속성

 

각 μ†μ„±μ˜ κ°’μ—λŠ” λ‹€λ₯Έ μœ„μ ―μ˜ 아이디λ₯Ό μ§€μ •ν•˜λ©΄ λ˜λŠ”λ°"@+id/κΈ°λΆ„ μœ„μ ―μ˜ 아이디" 와 같은 ν˜•μ‹μœΌλ‘œ μ‚¬μš©ν•œλ‹€. 

 


β—β—ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒβ—β—

ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒμ€ μœ„μ ―μ„ ν‘œ ν˜•νƒœλ‘œ λ°°μΉ˜ν• λ•Œ 주둜 ν™œμš©λœλ‹€. ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒμ„ μ‚¬μš©ν•˜μ—¬ ν–‰κ³Ό μ—΄μ˜ 수λ₯Ό μ •ν•˜κ³  κ·Έμ•ˆμ— μœ„μ ―μ„ λ°°μΉ˜ν•˜λ©΄ νŽΈλ¦¬ν•˜λ‹€. μ΄λ•Œ <TableRow>λ₯Ό ν•¨κ»˜ μ‚¬μš©ν•˜λŠ”λ° <TableRow>의 μˆ˜κ°€ ν–‰μ˜ μˆ˜μ΄λ‹€. 그리고 μ—΄μ˜ μˆ˜λŠ” <TableRow> μ•ˆμ— ν¬ν•¨λœ μœ„μ ―μ˜ 수둜 κ²°μ •λœλ‹€. 3ν–‰ 4μ—΄μ˜ ν…Œμ΄λΈ” λ ˆμ΄μ•„μ›ƒμ€ λ‹€μŒκ³Ό κ°™λ‹€.

μœ„μ ― μœ„μ ― μœ„μ ― μœ„μ ―
μœ„μ ― μœ„μ ― μœ„μ ― μœ„μ ―
μœ„μ ― μœ„μ ― μœ„μ ― μœ„μ ―

 

 

ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒμ˜ 속성

ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒμ—μ„œ μ„€μ •ν•˜λŠ” μ†μ„±μ—λŠ” layout_span, layout_column, stretchColumnsκ°€ μžˆλ‹€.  layout_spanκ³Ό layout_column은 ν…Œμ΄λΈ”λ ˆμ΄μ•„μ›ƒ μ•ˆμ— ν¬ν•¨λœ μœ„μ ―μ— μ„€μ •ν•˜λŠ” 속성이닀.  layout_span은 열을 ν•©μ³μ„œ ν‘œμ‹œν•˜λΌλŠ” 의미둜, 예λ₯Ό λ“€μ–΄ layout_span="2"λŠ” ν˜„μž¬ μ…€λΆ€ν„° 2개의 셀을 ν•©μ³μ„œ ν‘œμ‹œν•΄μ€€λ‹€.

layout_column은 μ§€μ •λœ 열에 ν˜„μž¬ μœ„μ ―μ„ ν‘œμ‹œν•˜λΌλŠ” μ˜λ―Έμ΄λ‹€. 그리고 stretchColumnsλŠ” <TableLayout> μžμ²΄μ— μ„€μ •ν•˜λŠ” μ†μ„±μœΌλ‘œ, μ§€μ •λœ μ—΄μ˜ λ„ˆλΉŒγ„Ή λŠ˜λ¦¬λΌλŠ” μ˜λ―Έμ΄λ‹€. stretchColumns="*"λŠ” 각셀을 λͺ¨λ‘ 같은 크기둜 ν™•μž₯ν•˜μ—¬ 전체화면이 κ½‰μ°¨λŠ” 효과λ₯Ό λ‚Έλ‹€. μ—΄μ˜ λ²ˆν˜ΈλŠ” 0λ²ˆλΆ€ν„° μ‹œμž‘ν•œλ‹€.

λŒ“κΈ€