更改抽屉布局项目

时间:2018-10-09 11:42:15

标签: java android database firebase android-fragments

代码

@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
    int id = item.getItemId();
    Fragment fragment = null;
    if (id == R.id.home) {
        fragment = new Fragment1();
    } else if (id == R.id.a) {
        fragment = new Fragment2();
    }else if (id == R.id.b) {
        fragment = new Fragment3();
    }else if (id == R.id.c) {
        fragment = new Fragment4();
    }else if (id == R.id.d) {
        fragment = new Fragment5();
    } else if (id == R.id.e) {
        fragment = new Fragment6();
    }else if (id == R.id.f) {
        fragment = new Fragment7();
    }else if (id == R.id.g) {
        fragment = new Fragment8();
    }else if (id == R.id.h) {
        fragment = new Fragment9();
    }else if (id == R.id.i) {
        fragment = new Fragment10();
    } else if (id == R.id.j) {
        fragment = new Fragment11();
    }else if (id == R.id.k) {
        fragment = new Fragment12();
    }

    //NOTE: Fragment changing code
    if (fragment != null) {
        FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
        ft.replace(R.id.mainFrame, fragment);
        ft.commit();
    }

    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); //Ya you can also globalize this variable :P
    drawer.closeDrawer(GravityCompat.START);
    return true;
}

我知道这是在抽屉式点击侦听器上实现的方法。但是我希望用户数据决定哪个片段来自哪里...我在Firebase中有很多数据说a-z ...而用户只想在抽屉中显示元音...我该怎么做?像是让抽屉像recyclerview之类的东西?有人可以帮帮我吗

1 个答案:

答案 0 :(得分:1)

一种方法是将所有菜单项都放在抽屉中,并使用setVisible()方法将其逻辑上隐藏。

  

setVisible()

     

设置菜单项的可见性。即使没有菜单项   可见,仍可以通过其快捷方式(完全调用它   禁用一项,将其设置为不可见和禁用)

编辑:

使用setTitle()方法来更改任何菜单项的标题。

  

setTitle()

     

更改与此项目关联的标题。

     

某些菜单类型没有足够的空间来显示完整标题,并且   而是使用简洁的标题。