마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Canvas 크기를 변경하고 refresh 어떻게 해야 할까요?

0 추천
안녕하세요 사용자 이벤트를 받아서

canvas 크기를 동적으로 변경해야 되는데

 

canvas 내부에서 그린것은 invalidate()로 변경되는데

캔버스 크기변경했을때 크기자체는 어떻게 refresh 해야될지 모르겠습니다

 

입력을 받아서 setMeasureDimenstion(w,h) 변경했는데 실시간으로

바로 변경이 안됩니다, EditText를 누르면 키보드가 올라오는데

이때 딱 변경됩니다..

(뭔가 액티비티 화면변화에 따라 다시 그려줄때 canvas 크기까지 변경되는것 같은데 이걸 호출하는 메서드를 모르겠습니다)

구조가

<Linear>

<customView>

<Linear>

이런식이여서

Linear.invalidate();

Linear.requestLayout();

등을 시도해봤는데 먹히지 않네요

customView.invalidate는 내부 onDraw라서 안먹히고

Linear.invalidate()가 리니어 내부를 다시 그려주는것 같아서 먹힐거라 예상했는데 안되네요..

 

finish();

startActivity(getIntent());

이런식으로 액티비티 자체 리플레쉬 하는건 원하는 방향이 아닙니다.

 

도와주세요~ㅠㅠ~~
익명사용자 님이 2016년 9월 21일 질문
2016년 9월 21일 수정

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...