2010-12-10 15 views
1

fllpper 뷰 내부에서 onlickListener를 설정해야합니까? 내 응용 프로그램에는 "다음", "이전"및 "마침"버튼이있는 질문 마법사가 있습니다. ViewFlipper를 사용하여 모든 질문을 처리했습니다. 플리퍼의 각 뷰에 대해 Radiogroup 내부에 래핑 된 textview 및 4 개의 라디오 버튼이 있습니다. 사용자가 마침 버튼을 클릭하면 RadioButton의 값을 가져오고 싶습니다. 필자가 계획 한 것은 라디오 버튼을 클릭 할 때마다 배열에 값을 저장하고 완료 버튼을 클릭 할 때 배열을 가져 오는 함수를 호출하는 것입니다. 이것을 구축하는 방법에 대한 제안이 있습니까?Viewflipper 내부에서 onclick 리스너를 설정하는 방법

내 질문 마법사가 다음과 같이 표시됩니다

alt text

답변

6

을 조기 최적화 격려의 위험에서, 나는 어느 정도의 가능성이 수십 세트를 틀지이 매우 유사한 문제를 (해결했습니다 동일한 페이지들)을 만들었지 만 약간 간접적으로 문제를 해결할 수 있습니다.

내 기술의 기초는 하나의 하위 페이지가 포함 된 ViewFlipper을 사용하는 것이 었습니다. 사용자가 '이전'또는 '다음'을 클릭하면 다음과 같은 일이 발생합니다.

  • ViewFlipper의 실제 하위보기 이미지를 '복제'하는 특수보기를 인스턴스화합니다.
  • 복제보기를 ViewFlipper에 추가하고 애니메이션없이 현재 자식으로 설정하십시오. 지금까지 UI는 아무 것도 변경되지 않은 것처럼 보입니다.
  • 반전중인 페이지의 텍스트 및 이미지 등으로 실제 자식보기 (현재 복제본으로 가려져 있음)를 업데이트하십시오.
  • 멋진 애니메이션으로 ViewFlipper의 현재 페이지를 실제 하위보기로 다시 설정하십시오.

내 페이지가 매우 복잡하기 때문에 여러 개의 목록, 모든 종류의 버튼, 이미지 등이 필요했습니다. 내 뷰 계층 구조에 2 ~ 3 개가있는 것은 몹시 낭비였습니다. , 수십 가지는 말할 것도 없습니다. 위의 기술은 레이아웃 복잡성을 최소화하고 페이지가 복잡하면 플립 애니메이션이 훨씬 빠르게 실행됩니다.

관련 문제