SwipeBackActivity的学习遇到的问题

//摘要:关于SwipeBackActivity,主要注意以下几种情况:
// 1.引入 compile ‘me.imid.swipebacklayout.lib:library:1.0.0’
// 2.将app的主题设置加入 true
// –这样主题就可以使透明的,不能用默认的主题;使用默认背景就是黑屏了,这个属性就是设置防止黑屏的。
// 关于阻止黑屏可查看:http://blog.csdn.net/fancylovejava/article/details/39643449
// 3.这个侧滑关闭页面的方法,同时这个三方的包的出处地址是:https://github.com/ikew0ng/SwipeBackLayout(里面有完整项目),感谢
// 4.滑动关闭有4种形式,在下面已经列举了
// 5.这里面已经通过监听滑动的手势来设置震动效果了:vibrate方法,(记住在配置文件中得申明震动的权限)
// 6.已经就遇到了,今天终于不是仅仅看人家的代码了,自己把代码写出来真的很好,印象也加深了。
代码块语法遵循标准markdown代码,例如:
“` python
private SwipeBackLayout mSwipeBackLayout;
private static final int VIBRATE_DURATION = 20;
/*
* 滑动关闭当前页面的方向有四种形式
* 1.SwipeBackLayout.EDGE_RIGHT 右边关闭页面
* 2.SwipeBackLayout.EDGE_LEFT 左边关闭页面
* 3.SwipeBackLayout.EDGE_BOTTOM 底部关闭页面
* 4.SwipeBackLayout.EDGE_ALL 以上三种形式关闭页面
*/
int edgeFlag;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

    findViewById(R.id.other_btn).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            startActivity(new Intent(MainActivity.this, OtherActivity.class));
        }
    });
    setSwipeBackEnable(true);
    mSwipeBackLayout = getSwipeBackLayout();


    edgeFlag = SwipeBackLayout.EDGE_RIGHT;
    //edgeFlag = SwipeBackLayout.EDGE_LEFT;
    //edgeFlag = SwipeBackLayout.EDGE_BOTTOM;
    //edgeFlag = SwipeBackLayout.EDGE_ALL;
    mSwipeBackLayout.setEdgeTrackingEnabled(edgeFlag);
    //震动效果
    mSwipeBackLayout.addSwipeListener(new SwipeBackLayout.SwipeListener() {
        @Override
        public void onScrollStateChange(int state, float scrollPercent) {
        }

        @Override
        public void onEdgeTouch(int edgeFlag) {
            vibrate(VIBRATE_DURATION);
        }

        @Override
        public void onScrollOverThreshold() {
            vibrate(VIBRATE_DURATION);
        }
    });
}

/***
 * 震动效果
 * @param duration
 */
private void vibrate(long duration) {
    Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
    long[] pattern = {0, duration};
    vibrator.vibrate(pattern, -1);
}

/*
* 这是最简单的方法
* @author yjbo 2016年5月26日18:20:38
*/
public class OtherActivity extends SwipeBackActivity {

private SwipeBackLayout mSwipeBackLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_other);
    setSwipeBackEnable(true);
    mSwipeBackLayout = getSwipeBackLayout();

    int edgeFlag;
    edgeFlag = SwipeBackLayout.EDGE_LEFT;
    mSwipeBackLayout.setEdgeTrackingEnabled(edgeFlag);
}

}

依赖:重点内容
dependencies {
compile fileTree(dir: ‘libs’, include: [‘*.jar’])
testCompile ‘junit:junit:4.12’
compile ‘com.android.support:appcompat-v7:23.4.0’
compile ‘me.imid.swipebacklayout.lib:library:1.0.0’
}



true

本文中的源码地址:(http://download.csdn.net/detail/yangjianbo456/9532344

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值