主页面Frgment横滑+底部导航布局功能(3)

         横滑的时候在Frgment01界面中设置一下在此显示的东西(比如你想在这个页面设置一个横滑然后下面是显示数据了什么的)先说横滑怎么写

在Frgment01布局页面  主页面设置个主 id viewPager

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.view.ViewPager
    android:id="@+id/view_par22"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"

    >


    <android.support.design.widget.TabLayout
        android:id="@+id/design_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top"

        >


    </android.support.design.widget.TabLayout>


    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"

        android:text="我的"
        />
</android.support.v4.view.ViewPager>

第二部在 Frgment01页面写  --先写两个

private ViewPager view_par22;
private List<Fragment> fragments;然后下面加载控件01页面布局的那个主 ID
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.frgment01_layout, container, false);
    view_par22 = view.findViewById(R.id.view_par22);
    return  view;

} 随后下面写 onca重写个方法 如下
 @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        创建个
fragments=new ArrayList<>();
    }
}

在创建几个frgment 你有几个标签导航就创建几个步骤如下点击文件夹 (frgment文件夹)右键 找frgment--FrgmentBlak--取名字不要把名字后面的Frgment去掉 只改前面的几个 然后页面下面又两个对号框 点了那两个对号然后下一步

随后创个FrgmentPagerAdapter 里面写 如下

 private List<Fragment>fragments;
    这个是定义的  这里面写的事右键自动创建的那几个页面的前名字
    private  String[] titles={"Yi","Er","San","Si"};

    public ParvAdapter(FragmentManager fm, List<Fragment> fragments) {
        super(fm);
        this.fragments = fragments;
    }

    public ParvAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        return fragments.get(position);
    }

    @Override
    public int getCount() {
        return fragments.size();
    }

    @Nullable
 这个是些个方法 getpage就出来了
    @Override
    public CharSequence getPageTitle(int position) {
     对应的上面定义的数组
        return  titles[position];
    }
} 写完这个页面返回到 Frgment01页面在那个方法里写成这样
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    fragments=new ArrayList<>();
 这个fragments就是上面定义的  --随后吧右键自动创建的几个fragment对应上
    fragments.add(new YiFragment());
    fragments.add(new ErFragment());
    fragments.add(new SanFragment());
    fragments.add(new SiFragment());
  随后刷新下适配器就完成了
    view_par22.setAdapter(new ParvAdapter(getChildFragmentManager(),fragments));

}

 以上3个就是底部导航+横滑了

猜你喜欢

转载自blog.csdn.net/qq_41880256/article/details/81220270