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

일정부분을 제외하고 뷰를 그리는법

0 추천

 

위의 이미지처럼 특정부분을 제외하고 Canvas로 뷰를 그리는 방법이 있나요?

결과만 비슷하게보이지않고 순수하게 검은쪽만 그리는 방법이 있을거같은데

감이안 잡히네요..

조언 좀 부탁드립니다.

예림이그코드좀바바 (2,470 포인트) 님이 2015년 6월 18일 질문

1개의 답변

+1 추천
 
채택된 답변
보통은 백그라운드에서 전체영역을 그리고 내모부분을  알파처리해서 지우고

그렇게 만들어진 이미지를 해당영역에 그립니다.

순수하게 api자체가 저런 드로우를 해주는 경우는 없습니다.

보통의 위의 방식이 일반적으로 가장 효율적이다 하는 방식이구요

그외는 구현하기 나름이라..

아무튼 한방에 저렇게 그리는 것은 없습니다.
컴러기 (22,230 포인트) 님이 2015년 6월 18일 답변
예림이그코드좀바바님이 2015년 6월 18일 채택됨
아 순수 api는 존재하지않는거군요..
머리를 굴려서 코드로짤수밖에없겠네요.
감사합니다.
네 그런데 백그라운드 작업이란거 해보세요
이를테면 ARGB_8888 포멧의 이미지라면
임시 이미지를 하나 만드시구 거기 켄버스를 잡으시구 원하는 전체역을 다 채우신 후 흰색부분을 알파값을 0으로 설정해주신후 화면영역에 이 임시이미지를 그리는 방법이 있습니다.
http://stackoverflow.com/questions/14801075/android-how-to-apply-mask-on-imageview
이런식이지요
어라 지금 딱 답변주신 생각으로 시도중인데 머리속에서
정리가안되서 삽질중인데 좋은 참고가 될거같아요.
감사합니다
...