Skip to content

linuxjava/FoldingWidget

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

23 Commits

Repository files navigation

StickyNavLayout

项目特点

  • 支持RecycView和ViewPage嵌套滑动;
  • headerview支持固定不动和上滑两种类型;
  • 支持上滑设置margin;
  • 支持自动回弹和上滑;
  • 支持控制头部折叠后是否还能展开;
  • 控制是否支持嵌套滑动;
  • 支持方法调用自动展开或隐藏headerview;
  • 支持滑动回调listener;

APK下载

Download

XML配置

参考demo中的使用,注意StickyNavLayout需包含在RelativeLayout布局内,否则在有虚拟导航的设备上有bug;参考代码如下:

<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"> <xiao.free.folding.lib.StickyNavLayout android:id="@+id/stickynavlayout"android:layout_width="match_parent"android:layout_height="match_parent"> </xiao.free.folding.lib.StickyNavLayout> </RelativeLayout>

方法

/** * 设置顶部Margin * * @param topMargin 单位dp */ public void setTopPadding(int topMargin) /** * 是否支持停留在headview的中间位置 * * @param autoScroll */ public void setAutoScroll(boolean autoScroll) /** * 控制头部折叠后是否还能展开 * * @param enablePullDown */ public void setEnablePullDown(boolean enablePullDown) /** * 设置是否支持嵌套滑动 * * @param nestedScroll */ public void setNestedScroll(boolean nestedScroll) /** * 展开或隐藏头部 * * @param isExpand true:展开;false:隐藏 * @param duration */ public void expandFold(boolean isExpand, int duration) /** * 头部是否已完全隐藏 * * @return */ public boolean isFulledHideHeader() /** * 头部是否已完全显示 * * @return */ public boolean isFulledShowHeader() 

滑动回调监听

public interface ScrollListener{/** * 头部滚动回调 * * @param percentage 0~1:头部隐藏;1~0头部显示 */ void onScroll(float percentage)} 

效果图

两种头部滑动效果

imageimage

支持单个Recycview

image

支持ViewPage

image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages