如何使用 TabActivity 或 FragmentActivity 在 android 中创建选项卡

2024-03-26

我想在 android 中创建选项卡,但我真的不知道如何创建和
刚刚下载了一些视频,但这确实没有帮助 我使用 TabActivity 不幸的是它已被弃用:( 所以我需要你帮助我,谢谢你的建议


您必须设置 FragmentActivity 主类才能运行 Fragment。

您需要使用支持库 android.support.v4.app 中提供的 FragmentTabHost 类

使用 FragmentTabHost 的类:

public class SampleTabFragment extends Fragment {

private FragmentTabHost mTabHost;
public static View view;

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

    // fragment not when container null
    if (container == null) {
        return null;
    }

    // inflate view from layout
    view = (LinearLayout) inflater.inflate(R.layout.offer_tabs, container, false);

    // Setting Up the TabHost
    mTabHost = (FragmentTabHost) view.findViewById(android.R.id.tabhost);
    mTabHost.setup(getActivity(), getChildFragmentManager(), R.id.offer_realtabcontent);

    // For adding a tab divider image
    mTabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);

    // For Setting up the Tabs with their respective labels
    mTabHost.addTab(mTabHost.newTabSpec("info").setIndicator(createTabView
            (mTabHost.getContext(), "INFO")), DetailedOfferFragment.class, null);
    mTabHost.addTab(mTabHost.newTabSpec("location").setIndicator(createTabView
            (mTabHost.getContext(), "LOCATION")), LocationFragment.class, null);

    setRetainInstance(true);
    return view;
}

/***** Method for Custom TextView for Tabs *****/
private static View createTabView(final Context context, final String text) {
    View view = LayoutInflater.from(context).inflate(R.layout.tabs_text_bg, null);
    TextView tv = (TextView) view.findViewById(R.id.tabsText);
    tv.setText(text);
    return view;
}
}

使用选项卡的布局 Offer_tabs.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#6D6C6C"
android:orientation="vertical" >

<android.support.v4.app.FragmentTabHost
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android: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="@android:id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0"
            android:orientation="horizontal" />

        <View
            android:layout_width="fill_parent"
            android:layout_height="2dp"
            android:background="#696969" />

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

        <FrameLayout
            android:id="@+id/offer_realtabcontent"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1" />
    </LinearLayout>
</android.support.v4.app.FragmentTabHost>
</LinearLayout>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 TabActivity 或 FragmentActivity 在 android 中创建选项卡 的相关文章

随机推荐

  • 到底什么是“基于接口的编程”?

    我经常听到 读到基于接口的编程 但我不太清楚它的真正含义 基于接口的编程是一个实际的独立主题 实际上有关于它的书籍吗 如果有的话 谁能推荐一些好的吗 当我阅读有关如何设计优秀 API 的内容时 我遇到了基于接口的编程 并且想了解更多相关信息
  • MySQL:按时间排序(MM:SS)?

    我目前正在存储有关视频的各种元数据 其中数据之一是视频的长度 因此 如果视频长度为 10 分 35 秒 则会在数据库中保存为 10 35 但我想做的是按长度检索视频列表 最长的在前 最短的在后 我遇到的问题是 如果视频是 2 56 它会成为
  • 存储过程在手动运行时工作,而不是从 sql server 代理运行

    我有一个存储过程 可以在 SSMS 中使用执行命令正常运行 但是将相同的命令放入作业中会出现以下错误 第 9 行 第 9 个字符 输入意外结束 该代码采用 UTF 8 编码获取非常长的 XML 字符串 并将其放入单个nvarchar max
  • Asp.Net MVC - 进修课程

    当 MVC 第一次出现时 我每天都在阅读它并尽我所能地学习它 大约在 MVC 2 RC2 出来的时候 我因为各种原因停止了学习 新房子 新工作 懒惰 我现在想重新回到MVC 我有一个写了一半的博客想要完成 但是当涉及到任何MVC 时我都感到
  • 如何找到我的 Google 日历活动的活动 ID?

    我创建了一些 Google 日历事件 现在我想以编程方式对它们进行一些操作 问题是我没有他们的身份证 当我进入日历并单击事件时 我在任何地方都看不到 ID 有谁知道我在哪里可以找到它 还有另一种方法可以查看事件 ID 转到事件调试 URL
  • 改造2:@Query“encoded=false”不起作用

    0 我正在使用 Retrofit 2 来处理 1 我有一些界面 public interface ApiService GET statdirectory exchange Call
  • 不同翻译单元中不可重载的非内联函数定义

    假设我有 2 个 TU 其中有 2 个具有外部链接的非内联函数定义 其区别仅在于返回类型 我的程序违反了哪一段 基本 def odr 4 https timsong cpp github io cppwp n4659 basic def o
  • 如何从 CloudBees 部署到私有 Maven 存储库?

    我想在我的 CI 环境中使用 CloudBees 但我也想将我的 Maven 工件部署到我现有的私有 Nexus 存储库 在我当前的本地 Hudson 设置中 我使用 m2 settings xml 文件中的用户名 密码设置 如下所示
  • C++ 中带条件的循环擦除

    有没有更好的写法 for auto i container begin i container end if condition i i container erase i continue i 这段代码满足了我的要求 但感觉风格很糟糕 我
  • 如何用 CSS 强制 TD 达到一定高度?

    虽然some https stackoverflow com questions 2124630 forcing a certain width height with overflow in a td 问题 https stackover
  • 使用 datetimeoffset 时的 Linq to 实体框架错误

    我收到一个奇怪的错误 但无法修复它 有人可以帮忙吗 下面的代码失败 因为它不喜欢o ordered DateTime ToShortDateString 当该部分被注释掉时它会起作用 o ordered is a datetimeoffse
  • 如何修复 ibtool 失败并出现 Main.storyboard 错误:shouldBeArchived 无法识别

    我以前从未遇到过这个问题 该应用程序曾经运行完美 但现在总是显示此错误 我尝试过清理和重启 我试过重置IOS模拟器 我尝试过删除派生数据 这就是 xcode build 所说的 CompileStoryboard AITEST Base l
  • WPF 调度程序调用返回值始终为 null

    我调用了一个返回 a 的方法UIElement我称之为使用Dispatcher 下面是代码 然而 返回值Dispatcherinvoke 总是 NULL 有什么想法吗 void backgroundWorker DoWork object
  • Oracle Apex 22.21 - REST 数据源 - 嵌套 JSON 数组 - 通过触发器同步两个表 - PLSQL 错误问题

    这个问题是后续问题另一个问题 https stackoverflow com questions 75192510 oracle apex rest data source nested json array sync two tables
  • 生成指定数量的随机但独特的颜色

    我想做的是给 listView 中的每个项目赋予唯一的颜色 所以我的列表视图中的项目数为 计数 我的方法是调用下面的方法并给出我的项目的方法编号 然后它应该有一个保存第一种颜色的数组 然后当要生成下一个颜色时 应该将其与数组中之前的颜色进行
  • 已知哪些 JavaScript 库使用全局美元符号:window.$?

    哪些 JavaScript 库接管了 全局范围内的变量 如果库在全局命名空间上提供了不同的名称 或者提供了放弃的方法window 您能否链接到其文档中的正确函数 可能是其使用的一些代码示例 拥有这样的列表对于快速调试彼此之间的潜在冲突很有用
  • 如何使用静态方法作为 preg_replace_callback() 中的回调参数?

    我使用 preg replace callback 查找文本链接并将其替换为实时链接 http www example com to a href http www example com www example com a 我为该函数提供
  • 是否可以在 JFileChooser 窗口中选择文件名?

    我可以使用以下命令在 JFileChooser 窗口中设置默认文件名 fileChooser setSelectedFile 我想知道是否也可以选择它 这样如果您想将文件另存为其他文件 您可以立即开始重写它 感谢您对此的任何帮助 packa
  • Java中如何检查目录是否为空

    我想检查 Java 中的目录是否为空 但该目录中可能有很多文件 因此如果可能的话 我想在不查询其文件列表的情况下执行此操作 使用 JDK7 您可以使用 Files newDirectoryStream 打开目录 然后使用迭代器的 hasNe
  • 如何使用 TabActivity 或 FragmentActivity 在 android 中创建选项卡

    我想在 android 中创建选项卡 但我真的不知道如何创建和刚刚下载了一些视频 但这确实没有帮助 我使用 TabActivity 不幸的是它已被弃用 所以我需要你帮助我 谢谢你的建议 您必须设置 FragmentActivity 主类才能