2011-09-27 2 views
0

ImageView에서 이미지 세트의 특정 영역이 인 텐트를 호출 할 때 기능을 구현하려고합니다. HTML의 좌표와 유사android ImageView 하이퍼 링크 코드

내가 심지어 확대 된 이미지에서 이것을 구현하려는

<img src ="planets.gif" width="145" height="126" alt="Planets" usemap ="#planetmap" /> 

<map name="planetmap"> 
    <area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" /> 
    <area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" /> 
    <area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus" /> 
</map> 

하이퍼 링크. 내가 검색에 리드를 발견 무엇을 Heres

:

내가 (onTouch 적절한 논리와 함께 서피스 뷰 SurfaceView를 사용해야합니다)

유사한 기능이 mapViews에서 투영 방법을 얻습니다. 비슷한하지만 비트 맵을로드해야합니다.

답변

0

또 다른 가능한 접근법은 배경으로 투명 9 패치를 사용하는보기를 만드는 것입니다. 원하는 크기와 위치로 설정하고 onClickListener()에서 의도를 호출하십시오. 이것은 사용자 관점에서 동일한 효과를 얻습니다.

편집 : 동시에 여러 개의 활성 상태로 만들려면 여러 개의 투명한보기를 사용해야합니다. 한 번에 1 개의 액티브를 원한다면 같은 것을 재사용 할 수 있으며 크기/위치를 변경하면됩니다.

이 접근법을 사용하면 약간의 성능 저하를 가져올 추가보기가 생성되므로, OnTouchListener를 부착하고 onTouch 콜백 내에 로직을 가지고있는 곳에서 위에서 언급 한 것과 같은 일을하면서 성능을 극대화하려는 경우. Rect 객체를 생성하여 터치 영역을 나타내고 Rect.intersect()를 호출하여 터치 이벤트 위치가 rect 영역 중 하나와 교차하는지 확인할 수 있습니다. 그러면 전반적인 성능이 개선 될 것입니다.

+0

이 방법으로 여러 영역을 어떻게 설정할 수 있습니까? – Shardul

+0

여러 개의보기를 사용해야합니다. 편집을 참조하십시오. – FoamyGuy

+0

샘플이 있습니까? 이미지의 크기를 조정하려면이 영역도 확장해야합니다. 얼굴 책에 태그를 추가하는 것과 같습니다. – Shardul