我正在使用以下项目
https://github.com/akotoe/android-slide-out-menu.git开发幻灯片菜单应用程序。
如何通过单击幻灯片菜单中的列表在同一视图中运行不同的活动。
例如,如果我点击第1项,我想在一个单独的活动中解析一个XML文件,并将该活动作为子项添加到此父视图。因为在每个项目上单击我想解析一个单独的XML文件,我也想在一个单独的布局文件中表示解析数据。所以我需要一个活动来做这个,我希望将这个活动作为一个子项添加到这个父视图。
我怎么能这样做,任何人都可以帮助我做到这一点。
如果我开始一个新的Intent(startactivity),它会向我导航一个不同的页面。在哪里我看不到这个父页面。
答案 0 :(得分:3)
可以嵌入活动内部的UI组件应该从Fragment而不是Activity派生。将子活动转换为片段时,您需要覆盖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();
答案 1 :(得分:2)
您无法将活动嵌套在另一个活动中。 但你可以改用Fragment。 单击该项时,只需通过FragmentManager切换到右侧Fragment。
答案 2 :(得分:0)
先检查此答案
<强> How do I create a header or footer button bar for my Android application 强>
您可以在项目中拥有一个Master活动,
说,MainActivity.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);
}
在同一活动中,初始化菜单组件并为其编写监听器。
现在,
来自extends
MainActivity
你完成了。!!