Skip to content

滑动边缘退出

JingYeoh edited this page Aug 3, 2018 · 1 revision

支持Activity/Fragment边缘滑动退出,支持以下特性。

  • 支持多边缘滑动(上/下/左/右)
  • 遮罩自定义
  • 边缘阴影自定义
  • 视差效果自定义
  • 支持栈内Fragment及层级拦截
  • 支持Activity

如果发现有未支持的场景,请提交 issue

使用方式

在你想要支持的Activity/Fragment上添加Swiper注解。

注意:添加Swiper的类必须已经是添加过Puppet注解的, 因为要处理多Fragment的场景,所以需要依赖Rigger去处理。

@Swiper
@Puppet
public class TestFragment extends Fragment{
}

Swiper注解可以被继承,即只要父类中有Swiper注解,子类也可以实现滑动退出。

参数配置

支持java代码和注解参数两种配置方式,同时存在以java代码优先。

返回值 参数 默认值 说明
boolean enable() true 是否允许滑动退出
SwipeEdge[] edgeSide() SwipeEdge.LEFT 可以滑动的边缘
float parallaxOffset() 1.0f 视差效果,范围 0-1f,<0为不显示视差
int scrimColor() black 遮罩颜色
int scrimMaxAlpha() 128 范围0-255,在颜色最深的时候的透明度
int[] shadowDrawable() 0 边缘阴影drawable
int shadowWidth 20 单位 dp,边缘阴影宽度

以上参数均可通过java代码进行设置。

SwipeLayout swipeLayout = Rigger.getRigger(this).getSwipeLayout();
swipeLayout.setEnableSwipe();
// ...