片段中的选项卡,但布局不显示

时间:2017-05-29 12:39:02

标签: android android-studio android-fragments android-tabs

自周五以来我试图在一个类(FragmentCV.class)中创建3个标签,这些标签扩展了片段。

现在,我以为我想出来但它仍然无法正常工作

应用程序没有崩溃,我也没有收到任何错误/警告信息。

当我尝试打开FragmentCV.java时,它应该显示包含这3个标签的布局。

但不知怎的,我什么都没看到。它是空的但在XML文件中我可以看到那些标签。

FragmentCV.java

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTabHost;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;


public class FragmentCV extends Fragment {

    private FragmentTabHost mTabHost;


    public FragmentCV() {
        // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        //view = inflater.inflate(R.layout.fragment_cv, container, false);

        mTabHost = new FragmentTabHost(getActivity());
        mTabHost.setup(getActivity(), getChildFragmentManager(), R.id.fragment1);

        mTabHost.addTab(
                mTabHost.newTabSpec("personal Profile").setIndicator("Personal Profile", null),
                FragmentCVpage1.class, null);
        mTabHost.addTab(
                mTabHost.newTabSpec("education").setIndicator("Education", null),
                Fragment_CVpage2.class, null);
        mTabHost.addTab(
                mTabHost.newTabSpec("bla").setIndicator("Bla", null),
                FragmentCVpage3.class, null);

        return mTabHost;
    }

    @Override
    public void onDestroyView() {
        super.onDestroyView();
        mTabHost = null;
    }
}

fragment_cv.XML

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/fragment1"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TabHost
        android:layout_marginTop="50dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/tabHost"
        android:layout_gravity="center_horizontal">

        <LinearLayout
            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="50dp"
                android:orientation="horizontal">
            </TabWidget>
            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent">

                <LinearLayout
                    android:id="@+id/tab1"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:orientation="horizontal">
                </LinearLayout>
                <LinearLayout
                    android:id="@+id/tab2"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:orientation="horizontal">
                </LinearLayout>
                <LinearLayout
                    android:id="@+id/tab3"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:orientation="horizontal">
                </LinearLayout>
            </FrameLayout>
        </LinearLayout>
    </TabHost>
</LinearLayout>

编辑:也许我会说,我使用“导航抽屉布局”类。

使用“导航抽屉”即时调用“FragmentCV.java片段。

所以,当我启动应用时:

  1. 将打开MainActivity.java(导航抽屉布局)。它包含一个“抽屉”,“工具栏”和一个名为“content_main.xml”的片段
  2. 我打开抽屉,按一个按钮拨打“FragmentCV.java”
  3. 现在我应该看到带有3个标签的“fragment_cv.xml”,但我仍然看到“content_main.xml”布局。所以似乎“fragment_cv.xml”没有出现

0 个答案:

没有答案