2013-03-12 2 views
3

새로운 v2 API의 Google지도 개체에 문제가 있습니다. 지도 개체를 표시하거나 숨기는 방법을 추가하려고하지만 작동하지 못하는 것 같습니다.Google지도 Android v2 -지도 조각을 숨길 수 없습니다.

예를 들어, - MapFragment 클래스를 확장하는 MyMapFragment라는 클래스가 있습니다.

나는 여기에 게시 된 것으로 보이는 몇 가지 방법을 시도했지만 어느 것도 나를 위해 작동하지 않는 것 같습니다.

옵션 1 :

this.getFragmentManager().beginTransaction().hide(this).commit(); 

옵션 2 : 나는 실제 포함 된 뷰를 숨기기 위해 노력했습니다 , 다음과 같은 것을 사용 :

MyMapFragment 클래스 내부 , 내가 전화하려고했습니다
getActivity().getWindow().findViewById(CONTENT_VIEW_ID); 
v.setVisibility(View.INVISIBLE); 

두 옵션 모두지도의 UI 컨트롤 (즉, 확대/축소 컨트롤)을 성공적으로 숨기지 만 실제지도는 숨겨지지 않습니다.

지도 조각을 숨기는이 방법에 어떤 문제가있을 수 있습니까?

많은 도움을 주셨습니다.

답변

1

동일한 문제가 있습니다 (MapFragment and Camera seem to interfere with each other in the same Activity 참조). 필자의 경우 사용자 CommonsWare는 하나의 Activity에서 두 개의 SurfaceView 객체를 사용했기 때문에 문제가 있음을 알았습니다. 하나의 앱에 두 개의 액티비티를 사용했을 때 문제가 사라졌습니다. 아마도 그것은 여기에서 문제의 근원입니까?

+0

아,이게 정확히 문제라고 생각합니다. 주요 액티비티는 SurfaceView를 사용하고 있으며 맵 조각을 포함하는 새 FrameLayout을 해당 액티비티에 추가하고 있습니다. 다른 활동을 사용하여지도 조각 /보기를 보유 할 수 있지만 기본 활동의 상단 또는 상단에 표시 할 수 있습니까? (나는 안드로이드에 대해 매우 익숙하다. 그래서 이것이 기본적인 질문이라면 나를 용서해 준다!) – koriner

2

는 방법 .setVisibility(View.GONE/View.VISIBLE)

올바른 방법인지 확실하지으로 전체 레이아웃을 FrameLayout에 넣어 다음 레이아웃과 쇼에 ID를 할당/숨기려고하지만 나를 위해 작동합니다.

희망 하시겠습니까?