仿微信右滑关闭Activity

时间:2024-04-15 20:09:28

SwipeBackLayout

1.AS添加依赖

  compile 'me.imid.swipebacklayout.lib:library:1.0.0'

  eclipse 想办法下载库工程,以库工程形式导入。

2.基类Activity继承SwipeBackActivity 
  BaseActivity extends SwipeBackActivity
3、不需要右滑的Activity在onCreate中添加以下语句即可:

  getSwipeBackLayout().setEnableGesture(false);//关闭右滑返回上一级

4、为app style(Theme)添加以下属性 
<!-- 解决activity切换时的黑屏问题 -->
<item name="android:windowIsTranslucent">true</item>
5、添加混淆
#SwipeBackLayout
-dontwarn me.imid.swipebacklayout.lib.**
-keep class me.imid.swipebacklayout.lib.**{*;}
6、解决滑动返回上一个Activity出现桌面的bug

  单独为主界面Activity设置以下属性

  <item name="android:windowIsTranslucent">false</item>

7、由于SwipeBackActivity继承了FragmentActivity,所以对一些需要使用v7包(AppCompatActivity)属性
的Activity需要单独处理:
1.看Activity是否需要右滑关闭,如不需要,则继承FragmentActivity即可。
2.若需要,则可以重新生成SwipeBackActivity的库工程,让SwipeBackActivity继承AppCompatActivity,
但需要注意主题的修改(继承AppCompatActivity的Activity,主题要使用v7包下的主题,才可用v7包下的某些属性)