如何在活动中获得android:id =“@ android:id / tabhost”

时间:2014-08-20 10:35:43

标签: android android-activity android-tabhost

我有以下xml文件:

<android.support.v4.app.FragmentTabHost 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentTop="true">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginTop="50dp"/>
    </LinearLayout>

</android.support.v4.app.FragmentTabHost>

我正在使用Android SlidingUpPanel库。 mPanelLayout.setDragView(this.findViewById(R.id.???));我应该使用tab host的id设置它。

如果我将其设置为像mPanelLayout.setDragView(this.findViewById(R.id.tabhost));这样的xml,我可以将其设置为android:id="@+id/tabhost"。但是,我不知道如何在我的活动中获得android:id="@android:id/tabhost"

任何建议都将不胜感激。感谢。

3 个答案:

答案 0 :(得分:2)

由于此资源来自Android框架(@android
所以,你必须这样做:

mPanelLayout.setDragView(this.findViewById(android.R.id.tabhost));

答案 1 :(得分:0)

试试这个

mPanelLayout.setDragView(getView().findViewById(android.R.id.tabhost));

答案 2 :(得分:0)

尝试其中一个

TabHost tabHost = getTabHost();

TabHost tabHost= (TabHost)view.findViewById(android.R.id.tabhost)