Permalink
...
Comparing changes
Open a pull request
- 4 commits
- 3 files changed
- 0 commit comments
- 1 contributor
Unified
Split
Showing
with
29 additions
and 4 deletions.
- +1 −1 bottom-bar/bottom-bar.iml
- +1 −1 bottom-bar/build.gradle
- +27 −2 bottom-bar/src/main/java/com/roughike/bottombar/BottomBar.java
View
2
bottom-bar/bottom-bar.iml
| @@ -1,5 +1,5 @@ | ||
| <?xml version="1.0" encoding="UTF-8"?> | ||
| -<module external.linked.project.id=":bottom-bar" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="com.roughike" external.system.module.version="1.1.5" type="JAVA_MODULE" version="4"> | ||
| +<module external.linked.project.id=":bottom-bar" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="com.roughike" external.system.module.version="1.1.6" type="JAVA_MODULE" version="4"> | ||
| <component name="FacetManager"> | ||
| <facet type="android-gradle" name="Android-Gradle"> | ||
| <configuration> | ||
View
2
bottom-bar/build.gradle
| @@ -13,7 +13,7 @@ ext { | ||
| siteUrl = 'https://github.com/roughike/BottomBar' | ||
| gitUrl = 'https://github.com/roughike/BottomBar.git' | ||
| - libraryVersion = '1.1.5' | ||
| + libraryVersion = '1.1.6' | ||
| developerId = 'roughike' | ||
| developerName = 'Iiro Krankka' | ||
View
29
bottom-bar/src/main/java/com/roughike/bottombar/BottomBar.java
| @@ -175,6 +175,15 @@ public static BottomBar attach(View view, Bundle savedInstanceState) { | ||
| } | ||
| /** | ||
| + * Deprecated. Breaks support for tablets. | ||
| + * Use {@link #attachShy(CoordinatorLayout, View, Bundle)} instead. | ||
| + */ | ||
| + @Deprecated | ||
| + public static BottomBar attachShy(CoordinatorLayout coordinatorLayout, Bundle savedInstanceState) { | ||
| + return attachShy(coordinatorLayout, null, savedInstanceState); | ||
| + } | ||
| + | ||
| + /** | ||
| * Adds the BottomBar inside of your CoordinatorLayout and shows / hides | ||
| * it according to scroll state changes. | ||
| * <p/> | ||
| @@ -182,14 +191,21 @@ public static BottomBar attach(View view, Bundle savedInstanceState) { | ||
| * of your {@link Activity#onSaveInstanceState(Bundle)} to restore the state. | ||
| * | ||
| * @param coordinatorLayout a CoordinatorLayout for the BottomBar to add itself into | ||
| + * @param userContentView the view (usually a NestedScrollView) that has your scrolling content. | ||
| + * Needed for tablet support. | ||
| * @param savedInstanceState a Bundle for restoring the state on configuration change. | ||
| * @return a BottomBar at the bottom of the screen. | ||
| */ | ||
| - public static BottomBar attachShy(CoordinatorLayout coordinatorLayout, Bundle savedInstanceState) { | ||
| + public static BottomBar attachShy(CoordinatorLayout coordinatorLayout, View userContentView, Bundle savedInstanceState) { | ||
| final BottomBar bottomBar = new BottomBar(coordinatorLayout.getContext()); | ||
| bottomBar.toughChildHood(ViewCompat.getFitsSystemWindows(coordinatorLayout)); | ||
| bottomBar.onRestoreInstanceState(savedInstanceState); | ||
| + if (userContentView != null && coordinatorLayout.getContext() | ||
| + .getResources().getBoolean(R.bool.bb_bottom_bar_is_tablet_mode)) { | ||
| + bottomBar.setPendingUserContentView(userContentView); | ||
| + } | ||
| + | ||
| coordinatorLayout.addView(bottomBar); | ||
| return bottomBar; | ||
| } | ||
| @@ -588,6 +604,10 @@ private void initializeViews() { | ||
| mBackgroundView = rootView.findViewById(R.id.bb_bottom_bar_background_view); | ||
| mBackgroundOverlay = rootView.findViewById(R.id.bb_bottom_bar_background_overlay); | ||
| + if (mIsShy && mIgnoreTabletLayout) { | ||
| + mPendingUserContentView = null; | ||
| + } | ||
| + | ||
| if (mPendingUserContentView != null) { | ||
| ViewGroup.LayoutParams params = mPendingUserContentView.getLayoutParams(); | ||
| @@ -596,7 +616,12 @@ private void initializeViews() { | ||
| ViewGroup.LayoutParams.MATCH_PARENT); | ||
| } | ||
| + if (mIsTabletMode && mIsShy) { | ||
| + ((ViewGroup) mPendingUserContentView.getParent()).removeView(mPendingUserContentView); | ||
| + } | ||
| + | ||
| mUserContentContainer.addView(mPendingUserContentView, 0, params); | ||
| + mPendingUserContentView = null; | ||
| } | ||
| if (mIsShy && !mIsTabletMode) { | ||
| @@ -697,7 +722,7 @@ public boolean onLongClick(View v) { | ||
| return true; | ||
| } | ||
| - private void updateItems(BottomBarItemBase[] bottomBarItems) { | ||
| + private void updateItems(final BottomBarItemBase[] bottomBarItems) { | ||
| if (mItemContainer == null) { | ||
| initializeViews(); | ||
| } | ||