HVScrollView

Introduction: 可以配置水平和垂直滚动的 HVScrollView,参照 NestedScrollView 和 RecyclerView 代码写的
More: Author   ReportBugs   DemoAPK   
Tags:
ScrollView-双向ScrollView-水平ScrollView-

导入方式

gradle 导入

compile 'com.shizhefei:HVScrollView:1.0.1'  
compile 'com.android.support:support-v4:23.4.0'  

效果图

Download sample Apk

image

使用方法

<!-- app:scrollOrientation="both" 可以滚动的方向,默认双向滚动,可以配置 both,vertical,horizontal,none 四个值-->
<!--childLayoutCenter 内容是否居中显示,默认 false 右上角对齐-->
<!--fillViewportV  垂直内容宽度是否充满,默认 false 自适应-->
<!--fillViewportV  水平内容高度是否充满,默认 false 自适应-->

<!--android:scrollbars="horizontal|vertical" 显示滚动条-->
<!--android:fadingEdge="horizontal|vertical" 显示滚动条-->

<com.shizhefei.view.hvscrollview.HVScrollView xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/guide_hvScrollView"
    android:layout_width="match_parent"
    android:layout_height="500dp"
    android:fadingEdge="horizontal|vertical"
    android:scrollbars="horizontal|vertical"
    app:childLayoutCenter="false"
    app:fillViewportH="false"
    app:fillViewportV="false"
    app:scrollOrientation="both">

    <TextView
        android:layout_width="1000dp"
        android:layout_height="1000dp"
        android:layout_margin="8dp"
        android:text="Hello World"
        android:textColor="#fff" />

</com.shizhefei.view.hvscrollview.HVScrollView>

HVScrollView 配置 app:scrollOrientation="horizontal" 相当于 HorizontalScrollView
HVScrollView 配置 app:scrollOrientation="vertical" 相当于 NestedScrollView 或者,ScrollView
HVScrollView 配置 app:scrollOrientation="both" 双向滚动
HVScrollView 配置 app:scrollOrientation="none" 不能滚动
代码通过 setScrollOrientation 设置滚动方向

为什么写这个类库

1.解决 ScrollView 嵌套 ScrollView,当然 NestedScrollView 也可以,但是它没有水平方向的
2.解决 HorizontalScrollView 在 ViewPager 下滑动,滑动到末尾切换不了下一个页面 ViewPager
3.支持双向滚动和配置滚动方向
4.支持 CoordinatorLayout 和实现 NestedScrollingParent,NestedScrollingChild 的配合滑动,当然 NestedScrollView 也是可以.但是它没有水平方向的

主力类库

1.https://github.com/LuckyJayce/ViewPagerIndicator
Indicator 取代 tabhost,实现网易顶部 tab,新浪微博主页底部 tab,引导页,无限轮播 banner 等效果,高度自定义 tab 和特效

2.https://github.com/LuckyJayce/MVCHelper
实现下拉刷新,滚动底部自动加载更多,分页加载,自动切换显示网络失败布局,暂无数据布局,支持任意 view,支持切换主流下拉刷新框架。

3.https://github.com/LuckyJayce/MultiTypeView
简化 RecyclerView 的多种 type 的 adapter,Fragment 可以动态添加到 RecyclerView 上,实现复杂的界面分多个模块开发

4.https://github.com/LuckyJayce/EventBus
事件总线,通过动态代理接口的形式发布,接收事件。定义一个接口把事件发给注册并实现接口的类

5.https://github.com/LuckyJayce/LargeImage
大图加载,可供学习

6.https://github.com/LuckyJayce/GuideHelper
新手引导页,轻松的实现对应的 view 上面的显示提示信息和展示功能给用户

7.https://github.com/LuckyJayce/HVScrollView
可以双向滚动的 ScrollView,支持嵌套 ScrollView 联级滑动,参照 NestedScrollView 和 RecyclerView 代码写的

有什么建议可以发到我的邮箱 794629068@qq.com

联系方式和问题建议

License

Copyright (C) 2016 shizhefei(LuckyJayce)
Copyright (C) 2015 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Apps
About Me
GitHub: Trinea
Facebook: Dev Tools