下拉关闭一个Activity:Pull Back Layout

jopen 9年前

下拉关闭一个Activity。
screenshot.gif

下载

repositories {      // ...      maven { url "https://jitpack.io" }  }    dependencies {      // ... support library ...      // ...      compile 'com.github.oxoooo:pull-back-layout:1.0.0'  }

使用

You may refer to one of our apps that already using this library: mr-mantou-android

  1. 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>

  2.Wrapsooo.oxo.library.widget.PullBackLayoutaround yourImageVieworViewPager:

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

项目主页:http://www.open-open.com/lib/view/home/1444985332497