Repolode
pujiaxin33

pujiaxin33/JXCategoryView

An iOS category view library in Objective-C for segmented titles, paging and pager-style tab switching with customizable indicators and cells.

Stars
6,151
Forks
1,146
Open issues
39
Last commit
2 years ago

What is it?

JXCategoryView is an Objective-C library for iOS that builds the category tab bar and paged content found in apps like news and music clients. It provides a title view that switches between categories, a list container that synchronizes horizontal page scrolling with the selected tab, and a set of indicator styles such as lines, images, balls and triangles.

Indicators are built on a protocol, so developers can implement custom indicator effects, and cell styles are managed through subclasses of view, cell and cell model. The list container loads each page lazily and forwards willAppear, didAppear, willDisappear and didDisappear lifecycle calls to the pages it hosts, which can be either UIView or UIViewController instances.

The library targets iOS 9.0 and later with Xcode 9 or newer. It can be installed by copying the Sources folder into a project or through CocoaPods, and a separate Swift version is maintained as JXSegmentedView.

Key features

  • 01Title-based category view with indicator styles such as line, image, ball and triangle
  • 02Customizable indicators built on a protocol, with a base component view for subclassing
  • 03Title cells supporting color gradient, scaling, images, badges and multi-line rich text
  • 04Lazy-loaded list container that forwards page lifecycle callbacks
  • 05Supports both UIView and UIViewController as list pages

Use cases

  • Building a news or video app with a horizontally swipeable category tab bar
  • Adding segmented control or tab-style switching to an iOS screen with custom indicator animations
  • Creating a user profile page where a header sits above switchable list pages

Quick start

  1. 1

    Clone the repository and drag the Sources folder into your project

  2. 2

    Import the library header in your code

    #import "JXCategoryView.h"
  3. 3

    Or add the CocoaPods dependency to your Podfile and install

    pod install

Things to know

  • Objective-C only and targets iOS, so it cannot be used on other platforms.
  • The README lists iOS 9.0+ and Xcode 9+ as requirements.

Topics

#ios#objective-c#ui-component#tabs#segmented-control#paging#cocoapods#category#categoryview#collectionview

FAQ

What is JXCategoryView?
An iOS category view library in Objective-C for segmented titles, paging and pager-style tab switching with customizable indicators and cells. JXCategoryView is an Objective-C library for iOS that builds the category tab bar and paged content found in apps like news and music clients. It provides a title view that switches between categories, a list container that synchronizes horizontal page scrolling with the selected tab, and a set of indicator styles such as lines, images, balls and triangles.
Is JXCategoryView free to use? What license does it have?
JXCategoryView is open source under the MIT license. Check the license terms before using it in commercial products.
Is JXCategoryView still maintained?
No commits for 6+ months. The last commit to JXCategoryView was on Aug 7, 2024.
What can I use JXCategoryView for?
Building a news or video app with a horizontally swipeable category tab bar Adding segmented control or tab-style switching to an iOS screen with custom indicator animations Creating a user profile page where a header sits above switchable list pages
How do I install JXCategoryView?
Clone the repository and drag the Sources folder into your project Import the library header in your code: #import "JXCategoryView.h" Or add the CocoaPods dependency to your Podfile and install: pod install
Where can I get JXCategoryView?
The source code and installation instructions are on GitHub: https://github.com/pujiaxin33/JXCategoryView

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects