如何使用许多片段创建应用程序

时间:2018-02-27 10:16:24

标签: java android

我想用很多片段和导航抽屉制作应用程序。 所以我正在用NavigationDrawerActivity开始一个新项目,我的片段很适合:

enter image description here

是否有可能使用这个地方<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;
}

我可以在这里创建一个逻辑,用我自己的片段替换自动生成的内容主页吗?

1 个答案:

答案 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();