2012-07-19 82 views
1

我有下面的例子:Android和Tabactivity

当我点击Tab2的活动不适合之间的android屏幕的开始和直到标签行。为什么?我能做些什么来尝试和适应屏幕?

Main.java 

public class Tabs_androidActivity extends ActivityGroup { 
    public TabHost mTabHost; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    TabHost tabHost=(TabHost)findViewById(R.id.tabHost); 
    tabHost.setup(this.getLocalActivityManager()); 


    TabSpec spec1=tabHost.newTabSpec("Tab 1"); 
    spec1.setContent(R.id.tab1); 
    spec1.setIndicator("Tab 1"); 

    TabSpec spec2=tabHost.newTabSpec("Tab 2"); 
    spec2.setIndicator("Tab 2"); 
    spec2.setContent(new Intent(this, Tab2.class)); 



    TabSpec spec3=tabHost.newTabSpec("Tab 3"); 
    spec3.setIndicator("Tab 3"); 
    spec3.setContent(R.id.tab3); 



    tabHost.addTab(spec1); 
    tabHost.addTab(spec2); 
    tabHost.addTab(spec3); 

    tabHost.setCurrentTab(0); 

    } 

}

Tab2.java 
public class Tab2 extends Activity { 

    /** Called when the activity is first created. */ 

    TextView call; 
@Override 

public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 

    setContentView(R.layout.logs); 
    ///.... 


} 
} 

和main.xml中

<?xml version="1.0" encoding="utf-8"?> 
<TabHost xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/tabHost" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" 
     > 

     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" /> 

     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_alignParentTop="true" > 

      <LinearLayout 
       android:id="@+id/tab1" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 


      </LinearLayout> 

      <LinearLayout 
       android:id="@+id/tab2" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 


      </LinearLayout> 

      <LinearLayout 
       android:id="@+id/tab3" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 


      </LinearLayout> 


     </FrameLayout> 
    </RelativeLayout> 

</TabHost> 

logs.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/RelativeLayout01" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <TextView 
     android:id="@+id/call" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" > 
    </TextView> 

</RelativeLayout> 
+0

你想适应的'Activity'到全屏? – 2012-07-19 09:09:59

+0

我希望活动适合屏幕,直到它遇到标签菜单。目前新的活动是在全屏幕上,我的标签菜单不能清晰地看到,因为当在tab2上选择标签菜单时也写入 – 2012-07-19 09:10:55

回答

0

的main.xml:

<?xml version="1.0" encoding="utf-8"?> 
<TabHost xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/tabhost" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" 
     > 

     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="60dp"/> 
     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:padding="5dp"/> 
    </RelativeLayout> 

</TabHost> 

您的选项卡活动:

public class TabActivity extends android.app.TabActivity{ 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.tab_layout); 
// Resources res=getResources(); 
    TabHost tabHost=getTabHost(); 
    TabHost.TabSpec spec; 
    Intent intent; 

    intent=new Intent().setClass(this, Tab1Activity.class); 
    spec=tabHost.newTabSpec("tab1").setIndicator(yourimageID).setContent(intent); 
    tabHost.addTab(spec); 

    intent=new Intent().setClass(this, Tab2Activity.class); 
    spec=tabHost.newTabSpec("tab2").setIndicator(yourimageID).setContent(intent); 
    tabHost.addTab(spec); 

    intent=new Intent().setClass(this, Tab3Activity.class); 
    spec=tabHost.newTabSpec("tab3").setIndicator(yourimageID).setContent(intent); 
    tabHost.addTab(spec); 

    tabHost.setCurrentTab(0); 
    } 
}