RxBinding2(二)MaterialDesign系列

RxBinding2之MaterialDesign系列

依賴庫

//MaterialDesign庫包含了基礎庫
implementation 'com.jakewharton.rxbinding2:rxbinding-design:2.2.0'

支持組件

private void materialDesign(){
        RxAppBarLayout.offsetChanges(mAppBarLayout);
        RxBottomNavigationView.itemSelections(mBottomNavigationView);
        RxFloatingActionButton.visibility(mFloatingActionButton).accept(true);
        RxNavigationView.itemSelections(mNavigationView);
        RxSnackbar.dismisses(mSnackbar);
        RxSwipeDismissBehavior.dismisses(mSwipeDismissBehavior);
        RxTabLayout.select(mTabLayout).accept(true);
        RxTabLayout.selections(mTabLayout);
        RxTabLayout.selectionEvents(mTabLayout);
        RxToolbar.itemClicks(mToolBar);
        RxToolbar.navigationClicks(mToolBar);
    }
private void materialDesign(){
        RxAppBarLayout.offsetChanges(mAppBarLayout)
        .subscribe(new Consumer<Integer>() {
            @Override
            public void accept(Integer integer) throws Exception {
                
            }
        });
        
        RxBottomNavigationView.itemSelections(mBottomNavigationView)
        .subscribe(new Consumer<MenuItem>() {
            @Override
            public void accept(MenuItem menuItem) throws Exception {
                menuItem.getTitle();
                menuItem.getSubMenu();
                menuItem.getIcon();
                menuItem.getItemId();
                menuItem.getOrder();
                menuItem.getGroupId();
                menuItem.getActionView();
                menuItem.getIntent();
                menuItem.getMenuInfo();
                menuItem.isCheckable();
                menuItem.isChecked();
                menuItem.isEnabled();
                menuItem.isVisible();
                對應set方法
                .............
            }
        });
        
        RxFloatingActionButton.visibility(mFloatingActionButton).accept(true);
        RxNavigationView.itemSelections(mNavigationView)
        .subscribe(new Consumer<MenuItem>() {
            @Override
            public void accept(MenuItem menuItem) throws Exception {
             
            }
        });
        
        RxSnackbar.dismisses(mSnackbar)
        .subscribe(new Consumer<Integer>() {
            @Override
            public void accept(Integer integer) throws Exception {
                
            }
        });
        
        RxSwipeDismissBehavior.dismisses(mSwipeDismissBehavior)
        .subscribe(new Consumer<View>() {
            @Override
            public void accept(View view) throws Exception {
                //刷新組件消失
            }
        });
        
        RxTabLayout.select(mTabLayout).accept(true);
        RxTabLayout.selections(mTabLayout)
        .subscribe(new Consumer<TabLayout.Tab>() {
            @Override
            public void accept(TabLayout.Tab tab) throws Exception {
                tab.parent;
                tab.view;
                tab.getContentDescription();
                tab.getCustomView();
                tab.getIcon();
                tab.getPosition();
                tab.getTag();
                tab.getText();
                tab.isSelected();
                tab.select();
                對應set方法
            }
        });
        //TabLayout的選中事件
        RxTabLayout.selectionEvents(mTabLayout)
        .subscribe(new Consumer<TabLayoutSelectionEvent>() {
            @Override
            public void accept(TabLayoutSelectionEvent tabLayoutSelectionEvent) throws Exception {
                tabLayoutSelectionEvent.getTab();
                tabLayoutSelectionEvent.getView();
            }
        });
        
        RxToolbar.itemClicks(mToolBar)
        .subscribe(new Consumer<MenuItem>() {
            @Override
            public void accept(MenuItem menuItem) throws Exception {
                
            }
        });
        RxToolbar.navigationClicks(mToolBar)
        .subscribe(new Consumer<Unit>() {
            @Override
            public void accept(Unit unit) throws Exception {
                unit.toString();
            }
        });
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章