LinearLayout中的Android TabHost

时间:2010-09-19 10:19:13

标签: android android-tabhost android-linearlayout

嘿......我正在尝试使用如下布局结构创建一个活动:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

    <TabHost android:id="@+id/tabHost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
        <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
            <TabWidget android:layout_width="fill_parent"
                android:layout_height="wrap_content" 
                android:id="@android:id/tabs" 
                /> 
            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                >
            </FrameLayout>
        </LinearLayout>
     </TabHost>

     <some code here>

</LinearLayout>

这里有什么问题?我在我的活动中收到了nullPointerException

public class TabsActivity extends Activity
{
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.tabs);

        // Resources res = getResources();
        // TabHost tabHost = (TabHost)findViewById(R.id.tabHost);
   }
}

问题在于嵌套。 TabHost作为主XML节点没有问题。 THX!

错误: Screenshot

2 个答案:

答案 0 :(得分:0)

您误解了堆栈跟踪。

Intent内发生异常。您用于启动活动的Intent无效。修复您的Intent,您的问题就会消失。

答案 1 :(得分:0)

我遇到了类似的问题,解决方案是获取TabHost并致电setup()。很难说这是不是你的问题。