我想用很多片段和导航抽屉制作应用程序。
所以我正在用NavigationDrawerActivity
开始一个新项目,我的片段很适合:
是否有可能使用这个地方<include>
我有内容主要用于放置我的片段?
从android studio我收到了自动生成的代码:
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_camera) {
// Handle the camera action
} else if (id == R.id.nav_gallery) {
} else if (id == R.id.nav_slideshow) {
} else if (id == R.id.nav_manage) {
} else if (id == R.id.nav_share) {
} else if (id == R.id.nav_send) {
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
我可以在这里创建一个逻辑,用我自己的片段替换自动生成的内容主页吗?
答案 0 :(得分:1)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:baselineAligned="false"
android:orientation="vertical">
<FrameLayout
android:id="@+id/frame1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1">
</FrameLayout>
<FrameLayout
android:id="@+id/frame2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1" >
</FrameLayout>
</LinearLayout>
其他方式:
FragmentTransaction ft = fragmentManager.beginTransaction();
Fragment frag1 = new Fragment();
ft.add(R.id.llfram, frag1, "fragment_1");
Fragment frag2 = new Fragment();
ft.add(R.id.llfram, frag2, "fragment_2");
ft.commit();