2011-09-07 6 views
0

내 애플리케이션 (대시 보드, 주문 및 고객) 내에 3 개의 탭을 표시하기 위해 TabHost를 사용하고 있습니다. 이들 각각은 ListView를 포함하는 별도의 Activity이며 올바르게 작동합니다. 그들은 모두 Android 마켓 플레이스와 같은 '끝없는 스크롤링'시스템을 갖추고 있으며 탭을 전환 할 때 ListView 내에서의 위치를 ​​유지합니다. ListView 내에서 항목을 클릭하면 현재 새로운 활동 전체 화면이로드되고 TabHost가됩니다. TabHost 내에서 이러한 활동을로드하고 싶습니다 (예 : 고객 목록 내의 특정 고객을 클릭하면 고객 탭에 남아있는 동안 고객 정보를 볼 수 있습니다.) 그런 다음 잃지 않고 고객 목록으로 돌아갈 수 있습니다 귀하의 위치/목록을 다시로드). ActivityGroup 및 ViewFlipper에 대해 읽었지만 원하는 동작을 달성하는 방법을 알아 내려고 애 쓰고 있습니다.TabHost 내에서 새로운 활동을 시작하는 방법

답변

0
mTabHost = getTabHost(); 
mTabHost.setOnTabChangedListener(this); 
TabSpec spec; 
String Tab_title3 = "NameofTab"; 


TextView txtTabInfo3 = new TextView(this); 
    setUpTextView(txtTabInfo3); 
    txtTabInfo3.setText(Tab_title3); 

intent = new Intent(); 
intent.setClass(this, YourClass.class); 
spec = mTabHost.newTabSpec(Tab_title3).setIndicator(txtTabInfo3) 
      .setContent(intent); 
    mTabHost.addTab(spec); 

그래서 YourClass는 ListActivity 경우 내부는 고객 정보와 다른 목록과 예를 들어 팝업 대화 상자를 넣을 수 있습니다 그리고 당신은 닫기 버튼을 추가 할 수 있습니다. 대화 상자의 경우 어댑터 또는 다른 것으로 사용자 정의보기 목록보기를 설정할 수 있습니다. 방법의 예를 들어 :

buildMyDialog(){ 
    final Dialog dialog = new Dialog(this); 
    lv2=new ListView(this); 
    lv2.setAdapter(mAdapter2); 
    //.... 
final Button cancelButton=new Button(this); 
    dialog.setContentView(lv2); 

    dialog.show(

} 나는 TabHost 내에 남아있는 고객 목록 대신에 나타나는 고객의 세부 정보를 볼 수있는 다른 활동에 사용자를 취할 것을 예정했다

+0

. 대화 상자를 사용하는 대신 가능합니까? –

관련 문제