2010-06-15 1 views
0

TabHost 위젯은 탭 변경,하지만 난 탭을 변경하기 전에 코드를 실행해야 할 때 입력 한 데이터를 검증하기 위해, 코드를 실행하는 setOnTabChangedListener() 메소드가 있습니다. 이것이 가능한가? 나는 클릭 리스너를 사용하는 방법에 대해 생각했다하지만이 항목에 대한 클릭을 감지 그것을 얻을 서투른 것처럼 보인다, 나는 아직도 당신이 탭을 변경 취소하고 메시지를 표시 할 방법을 모르겠어요. 탭이 변경되기 전에 당신이 뭔가를 확인 할 수 있는지 모르겠어요안드로이드 OnTabChangingListener

+0

http://stackoverflow.com/questions/1088810/how-to-communicate-between-android-tabs에서 답을 찾았습니다. 대신 하나의 활동을 사용하는 것이 더 낫다는 것을 알았습니다. http :// /developer.android.com/guide/tutorials/views/hello-tabwidget.html – Echilon

답변

0

그러나 대안이있다. 탭이 변경 될 때, 당신의 검사를 수행하고, 데이터의 밤은 유효한 입력 한 경우, 메시지를 표시하는 탭의 내용보기를 변경하거나 비어 확인하고 오류를 설명하는 메시지 상자를 팝업. 거기에서 대화 상자를 설정할 수 있으므로 닫을 때 setCurrentTab (int index)를 호출하여 입력을 요구하는 탭으로 돌아갑니다.

는 도움을합니까?

+0

좋은 생각처럼 들리지만, 어떻게 탭 (효과적으로 독립 활동) 탭 호스트에 대한 참조를 얻을 것? – Echilon

+0

TabHost를 탭 활동의 정적 공용/보호 멤버 변수로 만듭니다. 이렇게하면 다른 활동에서 액세스 할 수 있습니다. 다음에 액세스하고 싶을 때 참조하기 만하면됩니다. MyTabActivity.myTabHost.setCurrentTab (...) – mtmurdock