gpt4 book ai didi

java - FragmentTabHost Horizo​​ntal Scrollview + Swipe Android

转载 作者:太空宇宙 更新时间:2023-11-03 11:08:54 26 4
gpt4 key购买 nike

我看了下面的问题

FragmentTabHost with horizontal scroll并且仍然无法在 android 中获得可滚动的水平标签。所有的标签都粘在一起。

我的 fragment 的onCreateView方法

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

View rootView = inflater.inflate(R.layout.fragment_home, container, false);
tabHost = (FragmentTabHost) rootView.findViewById(R.id.tabhost);

tabHost.setup(getActivity(),getFragmentManager()/* getChildFragmentManager()*/, R.layout.fragment_home);

Bundle arg1 = new Bundle();
arg1.putInt("Arg for Frag1", 1);
tabHost.addTab(tabHost.newTabSpec("Tab1").setIndicator("Latest Videos"), HomeFragmentChild1.class, arg1);

Bundle arg2 = new Bundle();
arg2.putInt("Arg for Frag2", 2);
tabHost.addTab(tabHost.newTabSpec("Tab2").setIndicator("Hot Videos"), HomeFragmentChild2.class, arg2);

Bundle arg3 = new Bundle();
arg3.putInt("Arg for Frag2", 3);
tabHost.addTab(tabHost.newTabSpec("Tab3").setIndicator("My Videos"), HomeFragmentChild2.class, arg3);

Bundle arg4 = new Bundle();
arg4.putInt("Arg for Frag2", 4);
tabHost.addTab(tabHost.newTabSpec("Tab4").setIndicator("Videos"), HomeFragmentChild2.class, arg4);

Bundle arg5 = new Bundle();
arg5.putInt("Arg for Frag2", 5);
tabHost.addTab(tabHost.newTabSpec("Tab5").setIndicator("Sample Videos"), HomeFragmentChild2.class, arg5);

TabWidget tw = (TabWidget) rootView.findViewById(R.id.tabs);
LinearLayout ll = (LinearLayout) tw.getParent();
HorizontalScrollView hs = new HorizontalScrollView(this.getActivity());
hs.setLayoutParams(new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT));
ll.addView(hs, 0);
ll.removeView(tw);
hs.addView(tw);
hs.setHorizontalScrollBarEnabled(false);
return tabHost;
}

XML:

<android.support.v13.app.FragmentTabHost                                                                               xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent" >

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

<TabWidget
android:id="@+id/tabs"
android:layout_width="match_parent"a
android:layout_height="wrap_content"
android:orientation="horizontal" />

<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="0" />

<FrameLayout
android:id="@+id/realtabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1" />
</LinearLayout>

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

此外,是否有可能实现一种滑动和更改选项卡的方法?我这边可能出现的错误??会有很大的帮助!谢谢!

最佳答案

使用 ViewPager 是一种解决方案。

请检查此链接:Using ViewPager for Screen Slide

另见:Creating Swipe Views with Tabs

关于java - FragmentTabHost Horizo​​ntal Scrollview + Swipe Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29512241/

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