gpt4 book ai didi

java - Android 4.0 问题的选项卡

转载 作者:行者123 更新时间:2023-12-01 05:16:43 26 4
gpt4 key购买 nike

我正在尝试在 android 2.2 - 4.0 上使用选项卡。我已延长 this演示:http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/FragmentTabs.html与:

TabSpec ts = mTabHost.newTabSpec("randomTab");
Intent intent = new Intent();
intent.setClass(this, FragActiv.class);
ts.setContent(intent);
ts.setIndicator("randomTab");
mTabManager.addTab(ts, FragActiv.class, new Bundle());

但我不知道要向 onTabChanged 添加什么,所有的魔法都在演示中发生。

我需要做的是:
我有一个 ListFragment,当单击某个项目时,它应该在小屏幕/纵向大屏幕/的单独屏幕上显示详细信息横向,在同一屏幕上显示带有详细信息的 fragment 。我可以使用 Fragments 解决这个问题,还是应该尝试让 FragmentActivities 正常工作?

按照以下示例:example ,我能够实例化一个 FragmentActivity,但它占据了整个屏幕,而不仅仅是选项卡菜单下的区域。

是否有可能使用“Activity ”(或“FragmentActivities”)而不是“fragment ”作为选项卡的内容

最佳答案

不需要做我想做的事情(使用 TabActivity 作为选项卡的内容)。我通过在 tabContent 中放置两个容器解决了这个问题,一个用于 ListView fragment ,一个用于详细信息 fragment 。这是我现在的布局:

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

<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
android:scrollbars="vertical" >

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

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

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:baselineAligned="false"
android:fadingEdge="none" >

<FrameLayout
android:id="@+android:id/realtabcontent"
android:layout_width="0px"
android:layout_height="fill_parent"
android:layout_weight="1" />

<FrameLayout
android:id="@+android:id/details_container"
android:layout_width="0px"
android:layout_height="fill_parent"
android:layout_weight="1"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>

最初,details_container 消失了。您可以按如下方式使用它:

        ft.replace(R.id.details_container, detailsFragment);
FrameLayout detailsLayout = (FrameLayout) mActivity.findViewById(R.id.details_container);
detailsLayout.setVisibility(View.VISIBLE);

关于java - Android 4.0 问题的选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11079429/

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