
McPageView
Remplacement de l'UipageControl par des images personnalisées
9
Github Watches
15
Github Forks
47
Github Stars
MCPagerView
Project goal
Make a replacement for the UIPageControl, with a similar functionality but custom "dots".
Here is a screenshot from the sample project:
License
This code is available under the MIT license.
Installation
- Drag files from the Classes folder to your project;
- #import "MCPagerView.h" wherever you want to use it.
Usage
Initialize the MCPagerView as you would do with any other view: either add a view in the Interface Builder and set a "MCPagerView" class on it or create one programmatically with a code like this:
[MCPagerView alloc] initWithFrame:CGRectMake(0,0,6*44,44)];
Actual values will depend on the sizes and the number of "dots".
Set the "pattern". Number of characters in the pattern will determine the number of pages and what kind of "dot" will be used for each of them. Here is the example from the sample project:
[pagerView setPattern:@"abcabc"];
This pager will have 6 pages with dot types "a", "b" and "c".
Now images should be specied for each of the dot types:
[pagerView setImage:[UIImage imageNamed:@"a"]
highlightedImage:[UIImage imageNamed:@"a-h"]
forKey:@"a"];
In this example, dot "a" is set up with "a.png" as the default value and "a-h.png" as a "highlighted" value. Dot is highlighted when it corresponds to the current "page" property.
Current page can be read or set by accessing the "page" property:
pagerView.page = 3;
A delegate can be set to receive updates to the pager:
pagerView.delegate = self;
Delegate should implement the "MCPagerViewDelegate" protocol. This protocol has two optional methods:
- (BOOL)pageView:(MCPagerView *)pageView shouldUpdateToPage:(NSInteger)newPage;
- (void)pageView:(MCPagerView *)pageView didUpdateToPage:(NSInteger)newPage;
Here is a simple "go to page" code from the sample project:
- (void)pageView:(MCPagerView *)pageView didUpdateToPage:(NSInteger)newPage
{
CGPoint offset = CGPointMake(scrollView.frame.size.width * pagerView.page, 0);
[scrollView setContentOffset:offset animated:YES];
}
Alternatively, an object can observe the "MCPAGERVIEW_DID_UPDATE_NOTIFICATION" notification on the default notification center:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(onPageChange)
name:MCPAGERVIEW_DID_UPDATE_NOTIFICATION
object:pagerView];
相关推荐
I find academic articles and books for research and literature reviews.
Confidential guide on numerology and astrology, based of GG33 Public information
Emulating Dr. Jordan B. Peterson's style in providing life advice and insights.
Your go-to expert in the Rust ecosystem, specializing in precise code interpretation, up-to-date crate version checking, and in-depth source code analysis. I offer accurate, context-aware insights for all your Rust programming questions.
Advanced software engineer GPT that excels through nailing the basics.
Take an adjectivised noun, and create images making it progressively more adjective!
Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.
L'application tout-en-un desktop et Docker AI avec chiffon intégré, agents AI, constructeur d'agent sans code, compatibilité MCP, etc.
Plateforme d'automatisation de workflow à code équitable avec des capacités d'IA natives. Combinez le bâtiment visuel avec du code personnalisé, de l'auto-hôte ou du cloud, 400+ intégrations.
🧑🚀 全世界最好的 LLM 资料总结 (数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Résumé des meilleures ressources LLM du monde.
Une liste organisée des serveurs de protocole de contexte de modèle (MCP)
Un puissant plugin Neovim pour gérer les serveurs MCP (Protocole de contexte modèle)
Pont entre les serveurs Olllama et MCP, permettant aux LLM locaux d'utiliser des outils de protocole de contexte de modèle
MCP Server pour récupérer le contenu de la page Web à l'aide du navigateur sans tête du dramwright.
La communauté du curseur et de la planche à voile, recherchez des règles et des MCP
Reviews

user_NIMSHD2w
MCPagerView by Baglan is a fantastic component for iOS developers looking to implement a pager view. Its ease of integration and intuitive design make it a pleasure to use. Highly recommend checking it out on GitHub: https://github.com/Baglan/MCPagerView. Fantastic job, Baglan!