2009-12-29 8 views
1

두 개의 탭이있는 응용 프로그램이 있습니다. 첫 번째 탭은 목록보기이고 두 번째 탭은 TextView를 만들려고합니다. 문제는 TextView를 표시하는 방법에 대한 아이디어가 없다는 것입니다. listview가 작동하지만 TextView에서 아무 것도 얻을 수 없습니다. Hello, World를 사용하여 텍스트를 탭으로 작업하려고 시도했지만 시도 할 수 없습니다.탭에서 다른보기를 가져올 수 없습니다.

TabWidget 나의 main.xml에 절은 다음과 같습니다

<TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" /> 
     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent"> 
      <ListView 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:id="@+id/itemlist" /> 
      <TextView 
       android:id="@+id/HelloAndroid" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"/> 
     </FrameLayout> 

의 ListView가 mTabHost 코드와 함께 자바 파일에 사용되면, 텍스트 뷰는 다른 파일에

 TabHost mTabHost = getTabHost(); 

    mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Answer").setContent(R.id.itemlist)); 
    mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Ask").setContent(R.id.HelloAndroid)); 

    mTabHost.setCurrentTab(0); 
} 

을 HelloAndroid.java라는 코드는 다음과 같습니다.

public class HelloAndroid extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     TextView tv = new TextView(this); 
     tv.setText("Hello, Android"); 
     setContentView(tv); 
    } 
} 

어떻게 그럴 수 있습니까? 두 번째 탭에 예제 텍스트가 표시됩니까? 감사합니다.

답변

2

정확하게 이해하면 두 번째 탭의 내용으로 HelloAndroid 활동을 표시하려고합니다. 내가 대신에, 괜찮아 경우


    mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Ask").setContent(R.id.HelloAndroid)); 

이 전화를해야합니다


Intent i = new Intent(this, HelloAndroid.class); 
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Ask").setContent(i)); 

그러나 당신은 당신의 HelloAndroid 활동에 텍스트 뷰와 아무런 공통점이 없다 명심해야 당신의 레이아웃 파일. 아마도 탭 액티비티로 액티비티를 설정하지 않고 레이아웃 파일에서 텍스트 뷰의 값을 변경하는 것이 더 좋을 것입니다.

추신. HelloAndroid 활동을 Manifest.xml에 저장하십시오.

+0

이렇게 많은 성과를 거뒀습니다. – Tyler

관련 문제