Zoomlayout: match_parent 버그

에 λ§Œλ“  2018λ…„ 09μ›” 29일  Β·  6μ½”λ©˜νŠΈ  Β·  좜처: natario1/ZoomLayout

μžμ‹ 보기 λ„ˆλΉ„λ₯Ό match_parent둜 μ„€μ •ν•˜λ €κ³  ν•˜λ©΄ 보기가 μ‚¬λΌμ§‘λ‹ˆλ‹€.
λ ˆμ΄μ•„μ›ƒμ„ μžμ‹ 보기둜 μΆ”κ°€ν•˜λ €κ³  ν•©λ‹ˆλ‹€.
이 문제λ₯Ό ν•΄κ²°ν•˜μ‹­μ‹œμ˜€.

wontfix

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

같은 λ¬Έμ œμ— μ§λ©΄ν–ˆμŠ΅λ‹ˆλ‹€. λΆ€λͺ¨ μΌμΉ˜κ°€ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. UIκ°€ 보이지 μ•ŠμŠ΅λ‹ˆλ‹€.

λͺ¨λ“  6 λŒ“κΈ€

wrap_content λ˜λŠ” dp 츑정기쀀을 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

dp 차원을 μ‚¬μš©ν•  λ•Œ 보기가 λ‚˜νƒ€λ‚˜μ§€λ§Œ μ›ν•˜λŠ” λŒ€λ‘œ λ‚˜νƒ€λ‚˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. wrap_contentλ₯Ό μ‚¬μš©ν–ˆμ„ λ•Œ μ—¬μ „νžˆ 보이지 μ•ŠμŠ΅λ‹ˆλ‹€.
μ•„λ§ˆλ„ 그것은 λ‚΄ κ²½μš°μ— μ ν•©ν•œ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ 아닐 κ²ƒμž…λ‹ˆλ‹€.
ν•˜μ§€λ§Œ ν›Œλ₯­ν•œ μž‘μ—…μž…λ‹ˆλ‹€. λ‹€λ₯Έ κ²½μš°μ— μ‚¬μš©ν•˜κΈ° μœ„ν•΄ λΆλ§ˆν¬μ— μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

같은 λ¬Έμ œμ— μ§λ©΄ν–ˆμŠ΅λ‹ˆλ‹€. λΆ€λͺ¨ μΌμΉ˜κ°€ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. UIκ°€ 보이지 μ•ŠμŠ΅λ‹ˆλ‹€.

이 λ¬Έμ œλŠ” μ—¬μ „νžˆ μ‘΄μž¬ν•©λ‹ˆλ‹€

κΈ€μŽ„, 그것은 ν˜„μž¬ μ§€μ›λ˜μ§€ μ•ŠμœΌλ©° μ•„λ§ˆλ„ κ·Έ μ΄μœ κ°€ μžˆμ„ κ²ƒμž…λ‹ˆλ‹€. @natario1 이 이 λ¬Έμ œμ— λŒ€ν•΄ λ‚˜λ³΄λ‹€ 더 많이 μ•Œκ³  있기 λ•Œλ¬Έμ— 이름을 지정할 수 μ—†μŠ΅λ‹ˆλ‹€. 해결책이 μ΅œμ†Œν•œ 기술적으둜 κ°€λŠ₯ν•˜κ³  @natario1이 λ™μ˜ν•˜λ©΄ 이 문제λ₯Ό λ‹€μ‹œ μ—΄ 수 μžˆμ§€λ§Œ, 우리 λ‘˜ λ‹€ μ‘°λ§Œκ°„ μ‘°μ‚¬ν•˜μ§€ μ•Šμ„ κ²ƒμž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 이것은 κ²°κ΅­ μ§€μ›ν•˜λŠ” νšŒμ‚¬κ°€ μ—†λŠ” μ˜€ν”ˆ μ†ŒμŠ€ GitHub ν”„λ‘œμ νŠΈμ΄λ―€λ‘œ μš°λ¦¬λŠ” (희망은) ν•¨κ»˜ μΌν•˜λŠ” κ΄΄μƒν•œ 무리일 λΏμž…λ‹ˆλ‹€. 당신이 그것을 μ‘°μ‚¬ν•˜κ³  그것을 κ³ μΉ˜λŠ” 방법을 μ•Œκ³  μ‹Άλ‹€λ©΄ μš°λ¦¬λŠ” PR을 μœ„ν•΄ 맀우 μ—΄λ € μžˆμŠ΅λ‹ˆλ‹€.

κ°€λŠ₯ν•  μˆ˜λ„ μžˆμ§€λ§Œ μ§€μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μž‘μ€ μ»¨ν…Œμ΄λ„ˆ μ•ˆμ— 큰 λ‚΄μš©μ΄ μžˆμ„ λ•Œ ν™•λŒ€/μΆ•μ†Œκ°€ ν•„μš”ν•˜λ‹€κ³  항상 μƒκ°ν•˜μ—¬ λ‚΄μš©μ„ μž‘κ²Œ λ§Œλ“€κ³  ν™•λŒ€/μΆ•μ†Œλ₯Ό ν™œμ„±ν™”ν•©λ‹ˆλ‹€. 이 μ»¨ν…μŠ€νŠΈμ—μ„œ match_parent μ½˜ν…μΈ λŠ” μ „ν˜€ μ˜λ―Έκ°€ μ—†μŠ΅λ‹ˆλ‹€. μ ν•©ν•˜λ‹€λ©΄ μ™œ ν™•λŒ€/μΆ•μ†Œ λ˜λŠ” μŠ€ν¬λ‘€ν•©λ‹ˆκΉŒ? μ •λ ¬ 등을 μ‚¬μš©ν•˜μ—¬ match_parent 처럼 보이게 ν•  κ²ƒμž…λ‹ˆλ‹€.

ν•œ 가지 문제λ₯Ό μ–ΈκΈ‰ν•˜μžλ©΄, 이것이 μ§€μ›λœλ‹€λ©΄ μ‹€μ œλ‘œ ZoomLayout μΉ˜μˆ˜λ³΄λ‹€ 더 큰 것을 match_parent 둜 μ„ μ–Έν•  수 μžˆμŠ΅λ‹ˆλ‹€. 슀크둀 κ°€λŠ₯ν•œ μ»¨ν…Œμ΄λ„ˆ

κ·Έλž˜μ„œ λ‚˜λŠ” 이것이 κΈ΄κΈ‰ν•˜κ±°λ‚˜ ν•„μš”ν•˜λ‹€κ³  μƒκ°ν•˜μ§€ μ•Šμ§€λ§Œ 자유둭게 μž‘μ—…ν•˜κ³  PR을 μ—½λ‹ˆλ‹€.

λ˜λŠ” κ°„λ‹¨νžˆ λ‹€μŒμ„ μˆ˜ν–‰ν•˜μ‹­μ‹œμ˜€.

content.layoutParams.width = zoomLayout.width
content.layoutParams.height = zoomLayout.height
content.requestLayout()

이것은 zoomLayout이 μ μ ˆν•œ λ„ˆλΉ„μ™€ 높이( onGlobalLayout λ˜λŠ” 이와 μœ μ‚¬ν•œ 것)λ₯Ό κ³„μ‚°ν•œ 후에 ν˜ΈμΆœλ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰