ImmersiveDetailSample
A sample application show how to realize immersive parallax effect header like Google Play Store
Feature
- Toolbar quick return.
- Statusbar&toolbar changes between transparent and solid when gallery visible/invisible.
- Gallery parallax effect.
How to use it
- Your detail Activty's theme should be:
res/values/style.xml:
<style name="AppTheme.NoActionBarTransparentStatusBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item> </style>
and res/values-v21/style.xml:
<style name="AppTheme.NoActionBarTransparentStatusBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item> </style>
- add "LollipopCompatSingleton.translucentStatusBar()" and "LollipopCompatSingleton.getInstance().fitStatusBarTranslucentPadding()" to Activity onCreate() method:
protected void onCreate(Bundle savedInstanceState) {
LollipopCompatSingleton.translucentStatusBar(this);
super.onCreate(savedInstanceState);
setContentView(R.layout.xxxx);
...... LollipopCompatSingleton.getInstance().fitStatusBarTranslucentPadding(toolbar, this);
- Add ObservableScrollView to your layout xml.
<com.matrixxun.immersivedetail.sample.widget.ObservableScrollView
android:id="@+id/scrollview"
android:scrollbars="none"
android:layout_width="match_parent"
android:layout_height="match_parent">
......
- initialize immersive feature.
scrollview.setupImmersiveEffect(getActivity(),imageContainer,toolbar,toolbarColor,toolbarTitle);
Compat
API level 14+ supported
Example
See example code here on Github. You can also see it live downloading this apk
License
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.