当前位置: 首页 > 知识库问答 >
问题:

如何在同一视图中运行不同的活动

曹浩淼
2023-03-14

我正在使用以下项目

https://github.com/akotoe/android-slide-out-menu.git开发滑出菜单应用程序。

如何通过单击幻灯片菜单中的列表在同一视图中运行不同的活动。

例如,如果我单击项目1,我想在一个单独的活动中解析一个XML文件,并将该活动作为子项添加到此父视图中。因为在每一项单击上,我希望解析一个单独的XML文件,并且我希望在一个单独的布局文件中表示解析后的数据。因此,我需要一个活动来完成这项工作,我希望将该活动作为子项添加到此父视图中。

我该怎么做?谁能帮我做这件事。

如果我启动一个新的Intent(开始活动),它会导航到一个不同的页面。在那里我看不到这个父页面。

共有3个答案

臧增
2023-03-14

先检查这个答案

如何为我的Android应用程序创建页眉或页脚按钮栏

在项目中可以有一个主活动,

说,Main Activity.java

在该主要活动中,为滑动菜单编写代码

@Override
    public void onCreate(Bundle inState) {
        super.onCreate(inState);

        mMenuDrawer = new MenuDrawerManager(this, MenuDrawer.MENU_DRAG_CONTENT,
                MenuDrawer.MENU_POSITION_RIGHT);

        mMenuDrawer.setContentView(R.layout.appui);
        mMenuDrawer.setMenuView(R.layout.slide_menu_ui);

    }

在同一活动中,初始化菜单组件并为其编写侦听器。

现在,

在您的每一个其他活动扩展Main活动

你完成了。!!

巫马心水
2023-03-14

您不能将活动嵌套在另一个活动中。但是您可以使用片段instread。单击该项时,仅切换到FragmentManager右侧的片段。

强阳曜
2023-03-14

可以嵌入到活动中的UI组件应该从片段而不是活动派生。将子活动转换为片段时,需要重写onCreateView而不是onCreate,以便加载片段的布局。

在主活动的布局中,您可以直接插入最初要显示的片段,并为该片段提供一个ID。然后您可以使用代码将该ID替换为另一个片段。

这是一个开始的好地方:http://developer.android.com/guide/components/fragments.html

这是一个太大的主题,我无法涵盖所有内容-你真的应该看看Android开发者资源-但这里有一些例子。

正如我所说,您可以将初始片段直接放入活动布局中。“片段”位于布局编辑器的“布局”选项卡上。您为该片段占位符提供了一个“Id”,您可以使用它来标识它,以及将在那里开始的片段类的“名称”。

然后当需要切换片段时,可以使用如下代码:

// Create new fragment and transaction
Fragment newFragment = new ExampleFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();

// Replace whatever is in the fragment_container view with this fragment
transaction.replace(R.id.fragment_container, newFragment);

// Commit the transaction
transaction.commit();
 类似资料:
  • 问题内容: 我公司购买了一种在页面上呈现ASP.NET控件的产品。该控件使用jQuery 1.2.3并将脚本标记添加到页面以引用它。如果控件以任何方式修改(包括修改以引用其他版本的jQuery),则控件的开发人员将不支持使用该控件。 我将要开始开发自己的控件,并希望使用jQuery 1.3的功能和速度改进。这两个控件都需要存在于同一页面上。 如何允许购买的控件使用jQuery 1.2.3和新的自定

  • 我有一个管道脚本,如下所示: ${build_type}可以是“发布”或“调试”。 当我的构建收到触发器时,我希望我的管道为${build_type}中的每个参数运行一次,然后向我发送一封电子邮件,其中包含有关两个构建的报告。 我怎样才能做到这一点? 我试图在编译阶段内定义一个并行块,并在那里设置build_type,但这并不能使其他阶段并行运行。

  • 问题内容: 我有一个视图,其中有三个选择器视图。两个选择器视图具有相同的数据,数组的编号为1到100。第三个选择器视图具有一个数组,其中包含模型铁轨制造商的列表。我已经使用在此站点上找到的方法标记了选择器视图,但是当我运行该应用程序时,所有三个选择器视图的数据都为1到100。我还将控件从所有选择器视图拖到视图顶部的黄色圆圈,然后单击 dataSource 和 委托 。如何在一个视图中使用具有不同数

  • 问题内容: 示例ViewModel: 主要活动: 我想调用第二个活动并使MainActivity接收更改。那可能吗? 问题答案: 调用时,您实际上创建/保留了绑定到的,因此不同的Activity具有不同的特性,并且每个Activity 使用给定的工厂创建a的不同实例,因此您不能在不同的s中具有相同的a实例。 但是,您可以通过传递自定义ViewModel工厂的单个实例(充当单例工厂)来实现此目的,因

  • 我有一个情况,我需要启动两个线程一个接一个。我尝试了以下代码片段,在这里我可以启动Thread12,但不能启动Thread2。我怎样才能开始两个......?如何启动两个线程一个接一个...? 代码片段

  • 在本活动中,我希望拥有导航抽屉,因此我扩展了'NavigationDrawer',在其他一些活动中,我希望使用相同的导航抽屉