Pull Back Layout
Pull down to finish an Activity.
Download
repositories {
// ...
maven { url "https://jitpack.io" }
}
dependencies {
// ... support library ...
// ...
compile 'com.github.oxoooo:pull-back-layout:1.0.1'
}
Usage
You may refer to one of our apps that already using this library: mr-mantou-android
- Make your Activity translucent by adding these two lines to your theme:
<style name="AppTheme" ...>
<!-- ... -->
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsTranslucent">true</item>
<!-- also translucent system ui -- suggested but not required -->
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>
- Wraps
ooo.oxo.library.widget.PullBackLayout
around yourImageView
orViewPager
:
<ooo.oxo.library.widget.PullBackLayout
android:id="@+id/puller"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</ooo.oxo.library.widget.PullBackLayout>
- Set a callback:
public class ViewerActivity extends AppCompatActivity implements PullBackLayout.Callback {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/* ... */
puller.setCallback(this);
}
@Override
public void onPullStart() {
// fade out Action Bar ...
// show Status Bar ...
}
@Override
public void onPull(float progress) {
// set the opacity of the window's background
}
@Override
public void onPullCancel() {
// fade in Action Bar
}
@Override
public void onPullComplete() {
supportFinishAfterTransition();
}
}