zoukankan      html  css  js  c++  java
  • Android滑动到顶部悬停

    无图说卵,先上图

    jianshu-top.gif

    查阅资料后,发现网上大部分都是用这种方法实现的:

    多写一个和需要悬浮的部分一模一样的layout,先把浮动区域的可见性设置为gone。当浮动区域滑动到顶部的时候,就把浮动区域B的可见性设置为VISIBLE。这样看起来就像悬浮在顶部不动了。

    具体看下边文章 :

    高仿美团app,浮动layout滑动到顶部悬停效果

    Android实例-仿美团app,浮动layout滑动到顶部悬停效果

    这里介绍的是另外一种方式:

    使用design包中的控件

    <android.support.design.widget.CoordinatorLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        tools:context="com.peipei.app.MainActivity">
    
        <android.support.design.widget.AppBarLayout
            android:layout_width="match_parent"
            android:layout_height="250dp">
    
            <android.support.design.widget.CollapsingToolbarLayout
                app:layout_scrollFlags="scroll"
                app:contentScrim="#000000"
                android:layout_width="match_parent"
                android:layout_height="220dp">
    
                <TextView
                    android:text="banner区域"
                    android:gravity="center"
                    android:textColor="#ffffff"
                    android:background="#987545"
                    android:layout_width="match_parent"
                    android:layout_height="220dp"/>
    
            </android.support.design.widget.CollapsingToolbarLayout>
    
            <TextView
                android:gravity="center"
                android:layout_width="match_parent"
                android:layout_height="30dp"
                android:text="悬浮的部分"/>
    
         </android.support.design.widget.AppBarLayout>
    
         <android.support.v4.widget.NestedScrollView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                app:layout_behavior="@string/appbar_scrolling_view_behavior">
    
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_margin="@dimen/text_margin"
                    android:text="@string/large_text"/>
    
          </android.support.v4.widget.NestedScrollView>
    
    </android.support.design.widget.CoordinatorLayout>

    实现步骤:

    1. 将需要悬浮的layout放到CollapsingToolbarLayout之外,AppBarLayout之内
    2. 将CollapsingToolbarLayout的app:layout_scrollFlags设置为scroll
    3. 给滚动的NestedScroolView设置
      app:layout_behavior="@String/appbar_scrolling_view_behavior"
      就大功告成了(记得根布局要是CoordinatorLayout)

    最终效果:

    damo-jianshu-top.gif

    来自:http://www.jianshu.com/p/abdb9828a00d

  • 相关阅读:
    Python异常处理
    Python中的变量作用域,LEGB规则和闭包原理
    Flask实现RESTful API
    Django中自定义实现RESTful API
    Python中的单例模式
    Flask中实现分页
    面向对象进阶
    Flask部分三方模块的使用
    面向对象基础
    在visual studio中设置点击左边选项卡中的类文件,右侧解决方案跳到对应的文件
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/6432797.html
Copyright © 2011-2022 走看看