RxBinding2(二)MaterialDesign系列

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_39507260/article/details/84330622

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();
            }
        });
    }

猜你喜欢

转载自blog.csdn.net/qq_39507260/article/details/84330622
今日推荐