2012-07-24 3 views
6

내 앱에 SemiClosedSlidingDrawer을 사용하고 있습니다.Android보기 라이프 사이클

빠른 설명 :

  1. 슬라이딩 서랍 갖는다 핸들콘텐츠 부분
  2. 부분 부분적 뷰 생성 개방되는 콘텐츠

문제점 :

뷰를 만들 때 내용 부분이 비정상적으로 표시되고 캐시됩니다. 주요 콘텐츠에 대한 작업을 수행하는 경우. 슬라이딩 서랍 부분의 내용에 반영되었습니다. 심지어 부분적으로 볼 수 있습니다.

콘텐츠이 GONE으로 설정되어있어 터치 이벤트 만 수신한다는 응답을 발견했습니다.

모든 인플레이션 캐싱이 완료된 후에 콘텐츠를 GONE으로 설정해야합니다. 알아야 할 것

마지막으로 호출 한 뷰 생성 수명주기 방법은 무엇입니까? 또는 ChildView의 가시성 속성을 어디에 설정할 것입니까?

나는 활동 내 slidingDrawer의 내용 를 참조하고 잘 작동 사라졌다 로 설정할 수 있습니다. 그러나이 문제를 해결할 수있는 적절한 방법이 있어야합니다.

답변

0

왜 나는 당신이 당신의 활동의 onCreate()에서 사라질 내용 부분을 설정할 수 없습니까?

또는 SemiClosedSlidingDrawer를 직접 구현하고 모든 생성자를 사용자 고유의 구현으로 재정의하십시오. 다음과 같은 내용 :

SemiClosedSlidingDrawer() { 
    super.SemiClosedSlidingDrawer(); 
    mContent.setVisibility(View.GONE); 
} 
+0

"나는 해냈어. 효과가있다." 하지만 인플레이션 이후에 호출 된 View의 라이프 사이클 메소드가 반투명 상태가되어 이벤트를 소비하지 않도록하고 싶습니다. –

+0

나는 생성자 트릭을 시도했다. 하지만 하단 콘텐츠 부분은 검은 색입니다. [부 풀리지 않고 캐시에 저장하지 마십시오.] –

+0

@mahemadhi 그렇기 때문에 보이기를 원하지만 클릭 이벤트를 받고 상호 작용할 수 없으시겠습니까? – Warpzit