1

ドロワーを折りたたみアイテムに設定しているMaterialDrawerライブラリを使用していますが、Firebaseデータベースの名前とサブアイテムの名前を取得します

しかし、サブアイテムを追加すると、折りたたまれているアイテムを再度折りたたんで展開するまで表示されません。データを追加するときにどのように通知できますか?

RootRef.addChildEventListener(new ChildEventListener() {
        @Override
        public void onChildAdded(DataSnapshot dataSnapshot, String s) {
            final int[] t = {0};
            Log.i("s =", String.valueOf(dataSnapshot.getKey()));
            final ExpandableDrawerItem IntentItemDrawer;

            result.addItem(IntentItemDrawer = new ExpandableDrawerItem()
                    .withName(String.valueOf(dataSnapshot.getKey()))
                    .withIcon(GoogleMaterial.Icon.gmd_collection_case_play)
                    .withIdentifier(t[0]++).withSelectable(false)
                    .withSubItems());

            RootRef.child(String.valueOf(dataSnapshot.getKey()))
                    .addChildEventListener(new ChildEventListener() {
                @Override
                public void onChildAdded(DataSnapshot dataSnapshot, String s) {
                    IntentItemDrawer.withSubItems(new SecondaryDrawerItem()
                            .withName(String.valueOf(dataSnapshot.getKey()))
                            .withLevel(2)
                            .withIcon(GoogleMaterial.Icon.gmd_8tracks)
                            .withIdentifier(t[
4

1 に答える 1

3

github の例:

//modify an item of the drawer
item1.withName("A new name for this drawerItem").withBadge("19").withBadgeStyle(new BadgeStyle().withTextColor(Color.WHITE).withColorRes(R.color.md_red_700));
//notify the drawer about the updated element. it will take care about everything else
result.updateItem(item1);

result.updateItem(/あなたのアイテム/);

ビューを展開するには、次の行を試してください。

result.getAdapter().toggleExpandable(位置);

于 2017-01-01T08:24:56.887 に答える