zoukankan      html  css  js  c++  java
  • viewpager的滑动

    在一个已经是月黑风高快下班的时刻了,我们产品突然通知我们开会,要添加一个功能,他闲来无聊随便戳了戳facebook,说点开联系人的那个横向滑动的卡片式的效果不错,让我们在我们的app里添加这个效果,我的天。。。

    这如何实现,能滑动的我能想到的也就是viewpager了,但是那个界面显示的是一屏幕显示仨界面,就在我年幼时都不知道这如何百度,这个效果是啥,经过我不懈的努力终于知道了。。。

    大概效果是这样。。。

                                                                   

    大概就这丑样子。。。

    瞅瞅代码吧,先看xml文件activity_main2

    <?xml version="1.0" encoding="utf-8"?>

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

                    android:id="@+id/linear_parent"

                    android:layout_width="match_parent"

                    android:layout_height="match_parent"

                    android:clipChildren="false"

                    android:layerType="software">

        <android.support.v4.view.ViewPager

            android:id="@+id/vp_wifi_list"

            android:layout_width="280dp"

            android:layout_height="400dp"

            android:layout_centerHorizontal="true"

            android:layout_centerVertical="true"

            android:background="@drawable/selector_wifi_viewpager_bg"

            android:clipChildren="false"/>

    </RelativeLayout>


    重头戏看这里:父布局一定要加这俩属性!

    android:clipChildren="false"<父控件里设置,这个属性是限制子控件大小,默认是true,也就是限制,这里需要手动设置成false,通俗点儿说

    就是就是说对于子元素来说,超出当前view的部分都会被切掉,那我们在这里把它设置成false,就是让超出view的部分,不要切掉>

    android:layerType="software"<父控件里设置,这个属性是设置层的属性为软件层,因为从android4.0之后,android是默认启动硬件加速的,

    而硬件加速对clip等操作是有影响的,会有问题,所以如果我们在自定义View样式中,用到clip等操作,对于android4.0以上的版本,我们需要将它的

    硬件加速关掉>

    代码里是这样:

      // 可显示的界面个数

      mViewPager.setOffscreenPageLimit(3);

      // 每个页面之间的距离

      mViewPager.setPageMargin(20);

      // 设置adapter

      mViewPager.setAdapter(new ViewPagerAdapter(mViews));

    可以了就这么简单。。。

  • 相关阅读:
    laravel passport 全局捕获 401 ,返回数据给前台
    服务器上每次执行git pull,都提示输入用户名和密码
    jQuery-File-Upload 使用,jQuery-File-Upload上传插件
    Java返回结果封装,SpringBoot返回结果封装
    Java Spring文件上传,Java文件上传,Java通用文件上传
    Mdb文件工具类,UCanAccess使用,Access数据库操作
    Access MDB文件解析查询,Access数据库解析工具类MdbUtils
    jquery easyui combogrid Uncaught TypeError:Cannot read property
    soap调用Jar包冲突,SOAPMessageContext
    js打开新窗口,js打开居中窗口,js打开自定义窗口
  • 原文地址:https://www.cnblogs.com/bobohaohao/p/5891773.html
Copyright © 2011-2022 走看看