gpt4 book ai didi

android - 使用另一个 fragment 中的 fragment 实现 TabLayout

转载 作者:太空狗 更新时间:2023-10-29 16:27:36 25 4
gpt4 key购买 nike

我遇到了标题中提到的问题。当我实现选项卡时,它们不显示内容,并且选项卡不流畅,就像这个问题一样:

TabLayout with viewpager not smooth scrolling

这样他们就可以在中间停下来等等。

你认为我做错了什么?我附上显示它的 fragment 的代码:

 public View onCreateView(LayoutInflater inflater,@Nullable ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_profile, container, false);
ButterKnife.bind(this,view);
tabLayout.addTab(tabLayout.newTab().setText(getResources().getString(R.string.news_feed)));
tabLayout.addTab(tabLayout.newTab().setText(getResources().getString(R.string.bio)));
tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);

mPager.setAdapter(new PagerAdapter(getActivity().getSupportFragmentManager()));
tabLayout.setupWithViewPager(mPager);
return view;
}

布局:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF"
tools:context="com.my.app.profileFragment">

<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_below="@id/main_profile_frame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary"
android:elevation="6dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
<!--android:minHeight="?attr/actionBarSize"-->
<!--android:layout_below="@+id/toolbar"-->

<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true" />
</RelativeLayout>



</FrameLayout>

这里有什么问题?我真的找不到错误。

提前致谢!

你的,

格热戈日

最佳答案

如果您想要一个 fragment 作为 fragment 容器,您必须使用 fragment 的 getChildFragmentManager() 方法。如果您使用 getSupportFragmentManager(),您基本上会使用 fragment 管理器,它的行为方式与 Activity 生命周期的方式相同,而不是您的 fragment 方式。 ( Reference )

所以不要使用 getActivity().getSupportFragmentManager(),而是使用 getChildFragmentManager()

关于android - 使用另一个 fragment 中的 fragment 实现 TabLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46291235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com