# JXSegmentedView/JXCategoryView

A powerful and easy to use segmented view (segmentedcontrol, pagingview, pagerview, pagecontrol, categoryview) (腾讯新闻、今日头条、QQ音乐、网易云音乐、京东、爱奇艺、腾讯视频、淘宝、天猫、简书、微博等所有主流APP分类切换滚动视图)

Repository: https://github.com/pujiaxin33/JXSegmentedView
Canonical: https://ross.abutalabs.com/products/jxsegmentedviewjxcategoryview
Language: Swift
License: MIT
License Family: permissive
Topics: page, pagecontrol, switch, segment, segmented, segmentedview, segmentedcontrol, category, categoryview, indicator, scrollview, collectionview, paging, pagingview, split, uipagecontrol, uipageviewcontroller, uisplitviewcontroller, swift
Last push: 2025-06-27T07:51:13+00:00

## Health v2 (maintenance only)
Score: 45/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 28, release rhythm 35, longevity 100
- inputs: {"age_days": 2807, "days_push": 432, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2887, forks 421 (observed 2026-08-28T04:07:28.232824+00:00)

## What it is
JXCategoryView (Objective-C) and JXSegmentedView (Swift) are iOS UI libraries for building highly customizable category/segmented tab views with paging content containers, similar to those used in Tencent News, TikTok/Douyin, JD, and Taobao. They support protocol-based custom indicators, multiple cell styles, and lifecycle-aware list containers.

## Use cases
- build a segmented tab bar with a paging scroll view on iOS
- recreate the top category switcher like Tencent News or Taobao
- customize tab indicator animations like line, dot, triangle, or background mask
- sync a scrollable title bar with nested list containers
- add a page control with indicator effects to a pager

## When to choose
- you need a feature-rich, highly customizable segmented control on iOS
- you want protocol-based indicator customization with many built-in styles
- you need both Objective-C and Swift versions of the same component
- you want lifecycle-correct nested list containers for paging

## When to avoid
- you are building for Android or cross-platform frameworks like Flutter or React Native
- you only need a simple UISegmentedControl without custom indicators
- your project targets platforms other than iOS

## Facets
- artifact type: library
- maturity: stable
- function: ui-components, animation, routing
- domain: mobile-development, frontend, cross-platform
- platform: -
- tags: segmented-control, paging-view, category-view, page-control, indicator, objective-c, uikit, cocoapods, scroll-view, ios, swift, mobile

## Member repositories
- pujiaxin33/JXSegmentedView (main) score 45
- pujiaxin33/JXCategoryView (mirror) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:28.232824+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:47:31.239339+00:00, confidence not recorded.
  - readme: https://github.com/pujiaxin33/JXSegmentedView (fetched 2026-08-28T04:07:28.232824+00:00, sha 438be8ca56fe)
- Data as of 2026-08-30T08:39:29.467469+00:00.
