版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
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();
}
});
}