MIT License

项目介绍

angcyo/DslTabLayout 是一个托管在 GitHub 上的开源项目,主要使用 Kotlin 编写,采用 MIT License 许可证,目前获得 1.8k 个 Star、154 次 Fork。

仓库全名
angcyo/DslTabLayout
开源许可证
MIT License
Star 数
1.8k
Fork 数
154
未关闭 Issue
24

README 摘要

DslTabLayout :hearts: Android界最万能的TabLayout(不仅仅是TabLayout). 高能自绘控件, 继承自ViewGroup, 非组合控件. Gitee仓库地址 文档地址 特性 1. 支持任意类型的child视图. 2. 支持任意类型Drawable的指示器. 3. 支持智能开启横向滚动. 4. 支持智能开启平分item宽度(1.5.4后). 5. 支持高凸模式, 允许某个child高出一节显示. 6. 支持滑动选择模式, 滑动的时候智能选择上一个或下一个. 7. 支持角标配置. 8. 支持ViewPager和ViewPager2 9. 支持竖向(2.0.0后) 10. 支持指示器居中 靠左 靠右展示(2.1.0后) 11. 支持选中后突出异形效果(2.2.0后) 12. 支持RTL(3.0.0后, minSdk>=17) 13. 支持指示器颜色滑动渐变效果(3.0.1后) 14…

完整内容见 GitHub 原始 README 或本页 。

常见问题

DslTabLayout 用什么语言开发?

主要使用 Kotlin 编写,采用 MIT License 许可证,目前有 1.8k 个 Star。

DslTabLayout 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 DslTabLayout 的源码?

可以直接克隆仓库:git clone https://github.com/angcyo/DslTabLayout.git,默认分支为 master;安装与运行步骤见仓库 README。

DslTabLayout 最近还在维护吗?

仓库最近一次更新为 3月18日,当前有 24 个未关闭 Issue;Star 数为 1.8k,可作为社区活跃度的参考。

简要分析

热度分
2086
价值分
1104
活跃状态
活跃

语言占比

Kotlin
Shell

Release

贡献者

README

DslTabLayout

API GitHub branch checks state GitHub AndroidX GitHub top language

GitHub code size in bytes GitHub repo size GitHub last commit GitHub issues GitHub Repo stars GitHub forks

:hearts: Android界最万能的TabLayout(不仅仅是TabLayout). 高能自绘控件, 继承自ViewGroup, 非组合控件.

Gitee仓库地址

文档地址

特性

  1. 支持任意类型的child视图.
  2. 支持任意类型Drawable的指示器.
  3. 支持智能开启横向滚动.
  4. 支持智能开启平分item宽度(1.5.4后).
  5. 支持高凸模式, 允许某个child高出一节显示.
  6. 支持滑动选择模式, 滑动的时候智能选择上一个或下一个.
  7. 支持角标配置.
  8. 支持ViewPager和ViewPager2
  9. 支持竖向(2.0.0后)
  10. 支持指示器居中 靠左 靠右展示(2.1.0后)
  11. 支持选中后突出异形效果(2.2.0后)
  12. 支持RTL(3.0.0后, minSdk>=17)
  13. 支持指示器颜色滑动渐变效果(3.0.1后)
  14. 支持指示器闪现效果(3.1.0后)
  15. 3.5.5前:compileSdk=33 minSdk>=17 3.5.5后:compileSdk=34 minSdk>=21

直接当做横向/竖向的LinearLayout使用方式即可, 无特殊要求.

入门使用

点击查看全部属性

点击查看事件回调

点击查看角标使用

关联ViewPager使用(兼容ViewPager2)

效果

一个DSLTabLayout可实现以下3中效果

高能自绘控件, 继承自ViewGroup, 非组合控件.

无需选择, xml配置即可, 还不赶紧收下?

带滚动效果和角标
带滚动效果和角标
普通和高凸效果
普通和高凸效果
带边框,分割线和滑动选择效果
分割线和滑动选择效果

竖向效果

竖向效果

竖向效果

竖向效果

突出效果

突出效果

突出效果

闪现效果

闪现效果

使用JitPack的方式, 引入库.

AGP 8.+ 根目录中的 settings.gradle

dependencyResolutionManagement {
    ...
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

AGP 8.- 根目录中的 build.gradle

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

APP目录中的 build.gradle

dependencies {
    ...
    implementation 'com.github.angcyo.DslTablayout:TabLayout:3.7.2'

    //可选
    implementation 'com.github.angcyo.DslTablayout:ViewPager1Delegate:3.7.2'
    //可选
    implementation 'com.github.angcyo.DslTablayout:ViewPager2Delegate:3.7.2'
}

如果无法从jitpack获取库可以尝试使用group:com.github.angcyo.DslTabLayout:xxx

使用Maven Central的方式, 引入库.

仅支持>=3.7.2版本.

配置仓库

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral() //this is important!
    }
}

添加依赖

dependencies {
    ...
    implementation "io.github.angcyo.DslTablayout:TabLayout:3.7.2"
    //可选
    implementation "io.github.angcyo.DslTablayout:ViewPager1Delegate:3.7.2"
    //可选
    implementation "io.github.angcyo.DslTablayout:ViewPager2Delegate:3.7.2"
}

更新日志

下载体验

扫码安装

扫码安装

License

FOSSA Status


群内有各(pian)种(ni)各(jin)样(qun)的大佬,等你来撩.

联系作者

点此QQ对话 该死的空格 点此快速加群

开源地址

扫码进群

给点鼓励

趋势

Stargazers over time

👏 感谢

angcyo/DslTabLayout

评论

暂无评论