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

 

相关文章
|
Android开发
解决圆形进度条ProgressBar的几个问题
Android自带的Progressbar默认就是圆形的,可以通过设置style属性 style="?android:attr/progressBarStyleHorizontal" 复制代码 这样就能变成条状进度条,如下: <ProgressBar android:layout_width="match_parent" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal"/>
1257 0
|
存储 缓存 API
Google Pay支付遇到的问题(上)
Google Pay 无法购买您要的商品 [DF-AA-01] [DF-AA-20] 支付失败、无法支付、购买无效 弹窗提示:我们这边除了点错误,请重试。 支付返回CODE(BillingResponseCode) 无法用于此购买交易 检查付款是否通过 使用 Play 商店应用 使用网络浏览器: 重启设备 更新 Play 商店应用 确保日期和时间正确 如果“自动日期和时间”和“自动时区”关闭 如果打开“自动日期和时间”和“自动时区”
4390 0
Google Pay支付遇到的问题(上)
|
开发工具 数据安全/隐私保护 git
remote: The project you were looking for could not be found.
因为使用了不同的账号对不同的项目进行登录,在更换回原先的账户下载git上的代码时,就报了这个问题,这个问题的导致原因其实也就是我们不断更换登录账户所导致的。
543 0
remote: The project you were looking for could not be found.
|
人工智能 Java Android开发
全面了解CPU Profiler:解读CPU性能分析工具的核心功能与用法
**==Traceview==** 是一个用于分析应用程序性能的工具,用来分析函数调用过程。 **==CPU Profiler==** 是 集成在Android Studio 3.2版本之后的Android Profiler工具当中,实时记录展示 App cpu消耗,用来替代Traceview。
|
API iOS开发
iOS 自定义转场动画 UIViewControllerTransitioning
iOS 自定义转场动画 UIViewControllerTransitioning
95 0
|
域名解析 网络协议 Java
HTTPDNS-Android 接入指南 |学习笔记
快速学习 HTTPDNS-Android 接入指南
585 0
HTTPDNS-Android  接入指南 |学习笔记
|
存储 Android开发 索引
带着需求看源码《如何判断 Activity 上是否有弹窗》
带着需求看源码《如何判断 Activity 上是否有弹窗》
512 0
带着需求看源码《如何判断 Activity 上是否有弹窗》
|
XML 编解码 程序员
Android Material UI控件之MaterialButton
Android Material UI控件之MaterialButton
704 0
Android Material UI控件之MaterialButton
|
缓存 Android开发 容器
android小技巧之不缓存的ViewPager
前言 在开发中我们会经常用到ViewPager这个类,比如引导页的啦,主页啦,等等之类的。 一般情况下,我在ViewPger中都是放的Framgnt,这样简单有方便,但是ViewPager却会默认的缓存当前页面的最近两个页面,于是问题就产生了,我们的需...
2180 0
|
Java Android开发
三句代码创建全屏Dialog或者DialogFragment:带你从源码角度实现
三句代码创建全屏Dialog或者DialogFragment:带你从源码角度实现
892 0
三句代码创建全屏Dialog或者DialogFragment:带你从源码角度实现