{"id":19775672,"url":"https://github.com/qstumn/verticaltablayout","last_synced_at":"2025-04-12T15:36:17.302Z","repository":{"id":37412678,"uuid":"64926335","full_name":"qstumn/VerticalTabLayout","owner":"qstumn","description":"垂直纵向的TabLayout、轻松创建纵向导航","archived":false,"fork":false,"pushed_at":"2021-03-30T01:30:10.000Z","size":7464,"stargazers_count":1229,"open_issues_count":31,"forks_count":180,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-04-03T15:11:09.817Z","etag":null,"topics":["tablayout"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qstumn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-08-04T10:38:20.000Z","updated_at":"2025-03-22T21:29:26.000Z","dependencies_parsed_at":"2022-08-18T06:43:19.673Z","dependency_job_id":null,"html_url":"https://github.com/qstumn/VerticalTabLayout","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qstumn%2FVerticalTabLayout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qstumn%2FVerticalTabLayout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qstumn%2FVerticalTabLayout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qstumn%2FVerticalTabLayout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qstumn","download_url":"https://codeload.github.com/qstumn/VerticalTabLayout/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248590305,"owners_count":21129780,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["tablayout"],"created_at":"2024-11-12T05:17:08.600Z","updated_at":"2025-04-12T15:36:17.276Z","avatar_url":"https://github.com/qstumn.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 该项目已废弃停止维护, 请不要再您的生产环境中使用\n\n# VerticalTabLayout\n[ ![Download](https://api.bintray.com/packages/qstumn/maven/VerticalTabLayout/images/download.svg) ](https://bintray.com/qstumn/maven/VerticalTabLayout/_latestVersion)\n\n垂直竖向的Android TabLayout    \n\n![](https://github.com/qstumn/VerticalTabLayout/blob/master/demo.png?raw=true)\n\n### 一些特性\n* 支持自定义Indicator大小\n\n* 支持自定义Indicator位置\n\n* 支持Indicator设置圆角\n\n* 支持Tab设置Badge\n\n* 支持Adapter的方式创建Tab\n\n* 多种Tab高度设置模式\n\n* Tab支持android:state_selected\n\n* 很方便的和ViewPager结合使用\n\n* 很方便的和Fragment结合使用\n\n![](https://github.com/qstumn/VerticalTabLayout/blob/master/demo_gif.gif?raw=true)\n\n## how to use:\n### 1. gradle\n```groovy\n\tcompile 'q.rorbin:VerticalTabLayout:1.2.5'\n```\nVERSION_CODE : [here](https://github.com/qstumn/VerticalTabLayout/releases)\n### 2. xml\n```xml\n    \u003cq.rorbin.verticaltablayout.VerticalTabLayout\n        android:id=\"@+id/tablayout\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:background=\"#EDEDED\"\n        app:indicator_color=\"#FFFFFF\"\n        app:indicator_gravity=\"fill\"\n        app:tab_height=\"50dp\"\n        app:tab_mode=\"scrollable\" /\u003e\n```    \n\n### 3. 属性说明\n\nxml | code | 说明\n---|---|---\napp:indicator_color | setIndicatorColor | 指示器颜色\napp:indicator_width | setIndicatorWidth | 指示器宽度\napp:indicator_gravity | setIndicatorGravity | 指示器位置\napp:indicator_corners | setIndicatorCorners | 指示器圆角\napp:tab_mode | setTabMode | Tab高度模式\napp:tab_height | setTabHeight | Tab高度\napp:tab_margin | setTabMargin | Tab间距\n\n### 4. 创建Tab的方式\n- 普通方式创建\n```java\n\ttablayout.addTab(new QTabView(context))\n\ttablayout.addOnTabSelectedListener(new VerticalTabLayout.OnTabSelectedListener() {\n            @Override\n            public void onTabSelected(TabView tab, int position) {\n                \n            }\n\n            @Override\n            public void onTabReselected(TabView tab, int position) {\n\n            }\n        });\n```\n- Adapter方式创建\t\t\t\n```java\n\ttablayout.setTabAdapter(new TabAdapter() {\n            @Override\n            public int getCount() {\n                return 0;\n            }\n\n            @Override\n            public TabView.TabBadge getBadge(int position) {\n                return null;\n            }\n\n            @Override\n            public TabView.TabIcon getIcon(int position) {\n                return null;\n            }\n\n            @Override\n            public TabView.TabTitle getTitle(int position) {\n                return null;\n            }\n\n            @Override\n            public int getBackground(int position) {\n                return 0;\n            }\n\t     });\n```   \n\t按照自己的需要进行返回相应的值即可，不需要的返回0或者null\n\t也可以选择使用SimpleTabAdapter，内部空实现了TabAdapter的所有方法\n\tTabBadge、TabIcon、TabTitle使用build模式创建。\n  \n- 结合ViewPager使用\n```java\n\ttablayout.setupWithViewPager(viewpager);\n```\nViewPager的PagerAdapter可选择实现TabAdapter接口\n\n如果您需要使用垂直竖向的ViewPager，推荐您使用：https://github.com/youngkaaa/YViewPagerDemo\n      \n- 结合Fragment使用\n```java\n\ttabLayout.setupWithFragment(FragmentManager manager, int containerResid, List\u003cFragment\u003e fragments, TabAdapter adapter)\n```\n### 5. 设置badge\n```java\n\tint tabPosition = 3;\n\tint badgeNum = 55;\n\ttablayout.setTabBadge(tabPosition,badgeNum);\n\tBadge badge = tablayout.getTabAt(position).getBadgeView();\n\t\n\tBadge使用方法请移步https://github.com/qstumn/BadgeView\n```\n\n### 6.更新计划\n 抽象解耦Indicator,实现绘制任意形状Indicator\n# LICENSE\n```\nCopyright 2016, RorbinQiu\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqstumn%2Fverticaltablayout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqstumn%2Fverticaltablayout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqstumn%2Fverticaltablayout/lists"}