Android

    Android / NestedScrollView ๋‚ด์˜ RecyclerView ์ž๋™ ์Šคํฌ๋กค ๋ฌธ์ œ (์Šคํฌ๋กค ๋ฐ€๋ฆผ ํ˜„์ƒ)

    NestedScrollView๋ฅผ ์‚ฌ์šฉํ• ๋•Œ ์ฃผ๋กœ ๋‚ด๋ถ€์— RecyclerView๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ focus๊ฐ€ RecyclerView๋กœ ๊ฐ€์„œ ์ƒ๋‹จ์— ๋‚ด์šฉ์ด ๋” ์žˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  RecyclerView๊ฐ€ ์žˆ๋Š” ์œ„์น˜๋กœ Scroll์ด ๋˜๋Š” ๊ฒƒ ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฐ ํ˜„์ƒ์ด ๋‚˜ํƒ€๋‚˜๋Š” ์ด์œ ๋Š” ScrollView๊ฐ€ ์žˆ์„๋•Œ ์ž์‹์— RecyclerView์™€ ๊ฐ™์ด Scroll์ด ๊ฐ€๋Šฅํ•œ ๋ทฐ๊ฐ€ ์žˆ์œผ๋ฉด, ํ•ด๋‹น ์ž์‹ ๋ทฐ์—๊ฒŒ focus๊ฐ€ ๋บ๊ธฐ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ž์‹๋ทฐ์—๊ฒŒ focus๊ฐ€ ๊ฐ€์ง€ ์•Š๋„๋ก ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๊ฐ€์žฅ ๋จผ์ € ๋“œ๋Š” ์ƒ๊ฐ์€ android:focusable(Focus ๊ฐ€๋Šฅ ์—ฌ๋ถ€), android:focusableInTouchMode (์‚ฌ์šฉ์ž ํ„ฐ์น˜์— ์ธํ•œ Focus ๊ฐ€..

    Android Firebase ๋™์ ๋งํฌ (Dynamic Link)

    Android Firebase ๋™์ ๋งํฌ (Dynamic Link)

    ๋ชฉ์ฐจ 1. Firebase๋™์  ๋งํฌ๋ž€? 2. Firebase ๋™์  ๋งํฌ ๋งŒ๋“ค๊ธฐ (Android) 3. ๋งˆ์น˜๋ฉด์„œ Firebase ๋™์  ๋งํฌ๋ž€? ์•ˆ๊ทธ๋Ÿฌ์‹œ๊ฒ ์ง€๋งŒ Microsoft์˜ DDL ๊ณผ Firebase์˜ ๋™์  ๋งํฌ๋Š” ๋‹ค๋ฅธ ๊ฒ๋‹ˆ๋‹ค. Firebase์˜ ๋™์ ๋งํฌ๋Š” ๋ง๊ทธ๋Œ€๋กœ ๋งํฌ๋กœ์จ (ํ”Œ๋žซํผ, ์•ฑ ์„ค์น˜) ์—ฌ๋ถ€ ๋“ฑ์— ๋”ฐ๋ผ์„œ ๋™์ ์œผ๋กœ (์•ฑ ์‹คํ–‰, ํ™ˆํŽ˜์ด์ง€, ์„ค์น˜ ํ™”๋ฉด) ์˜ ํ–‰๋™์„ ์‹คํ–‰์‹œํ‚ฌ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ์‚ฌ์šฉ์ž๋ฅผ ํ•˜๋‚˜์˜ ๋งํฌ๋กœ ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์  ๋งํฌ๋ฅผ ๋‹ค์–‘ํ•œ ์œ ์ €๋“ค์—๊ฒŒ ์ž˜ ๋…ธ์ถœํ•˜๋ฉด ์‚ฌ์šฉ์ž ์œ ์ž…์— ํฐ ํšจ๊ณผ๋ฅผ ๊ธฐ๋Œ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ์ œ๊ฐ€ ์žˆ๋Š” ํŒ€์—์„œ๋Š” ๋™์ ๋งํฌ๋กœ ๋งŒ๋“  QR์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์œ ์ž…์„ ์‹œ๋„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Firebase ๋™์  ๋งํฌ ๋งŒ๋“ค๊ธฐ (Android) F..

    Android / EditText TouchMode Cursor ๊นœ๋นก์ž„ ๋ฌธ์ œ ํ•ด๊ฒฐ

    EditText๋Š” ์‚ฌ์šฉํ•˜๊ธฐ ๋ฏผ๊ฐํ•œ Widget์ž…๋‹ˆ๋‹ค. ๊ธ€์ž๋ฅผ ์ž…๋ ฅํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํฌ์ปค์Šค๋ฅผ ๋ฐ›์•„์•„์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํฌ์ปค์Šค ๊ด€๋ฆฌ๋ฅผ ์ž˜ ํ•ด์ฃผ์–ด์•ผ ํ•˜์ฃ . ์ด๋ฅผ ์ž˜ ๊ด€๋ฆฌํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ๋˜๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•˜๋ ค๊ณ  ํ•˜์ง€ ์•Š์•˜์„๋•Œ์—๋„ EditText์— ํฌ์ปค์Šค๊ฐ€ ๊ฐ€์„œ ํ‚ค๋ณด๋“œ๊ฐ€ ์˜ฌ๋ผ์˜ค๊ณ ๊ฑฐ๋‚˜, ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ์Œ์—๋„ EditText์˜ ์ปค์„œ๊ฐ€ ๊นœ๋นก์ด๋Š” ๋ถˆ์ƒ์‚ฌ๋ฅผ ๊ฒช๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋Š” ๊ต‰์žฅํžˆ ๋ฏธ๊ด€์ƒ์œผ๋กœ ์ข‹์ง€ ์•Š์•„ ๋ณด์ด๊ฒŒ ํ•˜๊ณ  ์•ฑ์˜ ์™„์„ฑ๋„๊ฐ€ ๋–จ์–ด์ ธ ๋ณด์ด๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์™ ๋งŒํ•œ ๊ฒƒ์€ ConstraintLayout์ด๋‚˜ LinearLayout์— android:focusable, android:focusableInTouchMode ์†์„ฑ๊ณผ android:inputType=โ€textโ€ ๋“ฑ์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋‚˜. EditText๊ฐ€ Tou..