SwipeBackActivity 的使用

简介: 1、SwipeBackLayout 项目地址:https://github.com/ikew0ng/SwipeBackLayout     2、用法 android studio    compile 'me.
1、SwipeBackLayout

项目地址:https://github.com/ikew0ng/SwipeBackLayout

 

 

2、用法

android studio 

 

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

 

 

项目实例

package com.example.yiba8.myapplication;

import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.View;
import android.widget.TextView;

import me.imid.swipebacklayout.lib.SwipeBackLayout;
import me.imid.swipebacklayout.lib.app.SwipeBackActivity;

public class BackActivity extends SwipeBackActivity {

    private TextView back ;
    private SwipeBackLayout mSwipeBackLayout;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_back);

        mSwipeBackLayout = getSwipeBackLayout();

        int flag1 =   SwipeBackLayout.EDGE_LEFT ;   //左滑
        int flag2 =   SwipeBackLayout.EDGE_RIGHT ;  //右滑
        int flag3 =   SwipeBackLayout.EDGE_BOTTOM ; //下滑
        int flag4 =   SwipeBackLayout.EDGE_ALL ;    //全部

        //设置滑动模式
        mSwipeBackLayout.setEdgeTrackingEnabled(flag4);

        //自动调用滑动模式
        back = (TextView) findViewById( R.id.back );
        back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                scrollToFinishActivity();
            }
        });

        //设置是否可以滑动
        mSwipeBackLayout.setEnableGesture(true);

        //获取屏幕的宽度
        DisplayMetrics dm = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(dm);
        int  phoneWidth  = dm.widthPixels ;

        //设置侧滑的区域为屏幕宽度的1/3,如果不设置系统默认为50dip
        mSwipeBackLayout.setEdgeSize( phoneWidth / 3  );
    }
}

 

3、常见的问题

3.1 滑动后背景显示为黑屏

       

 

解决方法:在需要侧滑的 Activity 添加一个 Theme

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>
    <style name="AppBackTheme"  parent="@style/AppTheme">
        <item name="android:windowIsTranslucent">true</item>
    </style>

 

对activity添加theme

       <!--  侧滑返回  -->
        <activity
            android:theme="@style/AppBackTheme"
            android:name=".BackActivity">
        </activity>

 

4、项目下载

   http://download.csdn.net/detail/yanzi2015/9403931

 

相关文章
代码设置ConstraintLayout的layout_constraintDimensionRatio
代码设置ConstraintLayout的layout_constraintDimensionRatio
|
11月前
|
Android开发
Android自定义支持滑动监听View
Android自定义支持滑动监听View
336 0
|
缓存 JSON ARouter
Android开源系列-组件化框架Arouter-(一)使用方式详解
最近组里需要进行**组件化框架**的改造,用到了`Arouter`这个开源框架,为了更好的对项目进行改造,笔者花了一些时间去了解了下`Arouter
|
12月前
|
Web App开发 API 容器
CoordinatorLayout+AppBarLayout实现上滑隐藏ToolBar-Android M新控件
CoordinatorLayout+AppBarLayout实现上滑隐藏ToolBar-Android M新控件
165 0
|
JavaScript
js:Axios通过onUploadProgress获取上传文件进度和上传速度
js:Axios通过onUploadProgress获取上传文件进度和上传速度
419 0
|
网络安全 数据安全/隐私保护 iOS开发
如何申请iOS推送证书p12文件并配置极光推送平台
极光推送平台需要上传配置开发测试的iOS推送证书(开发环境)和上架到App Store的iOS推送证书(生产环境)。以下是申请这两个环境的推送证书p12文件的教程: 1. 创建APP ID时勾选推送服务,如果已经有APP ID并开启了推送权限,直接申请即可。 2. iOS开发推送证书(开发环境)
|
前端开发 定位技术 API
Android MVVM框架搭建(九)TabLayout、ViewPager、城市地图天气切换
Android MVVM框架搭建(九)TabLayout、ViewPager、城市地图天气切换
268 0
Android MVVM框架搭建(九)TabLayout、ViewPager、城市地图天气切换
|
存储 索引
SwiftUI极简教程42:使用MatchedGeometryEffect构建一个导航菜单
在本章中,你将学会使用MatchedGeometryEffect构建一个导航菜单。 在构建SwiftUI应用过程中,我们常常会使用TabView构建底部菜单,但更多的时候会由于我们定制化的需求,需要我们自己绘制底部菜单。 那么本章中,我们就来试试构建一个底部导航菜单。
361 0
SwiftUI极简教程42:使用MatchedGeometryEffect构建一个导航菜单
|
Java 数据库 数据安全/隐私保护
Java+Swing实现医院管理系统(上)
Java+Swing实现医院管理系统
409 0
Java+Swing实现医院管理系统(上)
|
iOS开发
iOS 系统push转场动画
iOS 系统push转场动画
218 0