XLSlideSwitch

发布于 2021-12-25 22:49:32 字数 1700 浏览 955 评论 0

GitHub:https://github.com/mengxianliang/XLSlideSwitch

原理简介:

顶部的标题栏是利用UICollectionview实现的;底部视图控制器的切换是利用UIPageViewController实现的。
最大化的优化内存的使用,每个ChildViewController都是随着滚动加载的,避免了同时加载引起的UI卡顿。

使用方法:

1、创建数据源:titles、viewControllers

//要显示的标题
NSArray *titles = @[@"今天",@"是个",@"好日子",@"心想的",@"事儿",@"都能成",@"明天",@"是个",@"好日子",@"打开了家门",@"咱迎春风",@"~~~"];
//创建需要展示的ViewController
NSMutableArray *viewControllers = [NSMutableArray new];
for (int i = 0 ; i<titles.count; i++) {
TestViewController *vc = [TestViewController new];
[viewControllers addObject:vc];
}
2、创建滚动视图

_slideSwitch = [[XLSlideSwitch alloc] initWithFrame:CGRectMake(0, 64, self.view.bounds.size.width, self.view.bounds.size.height - 64) Titles:titles viewControllers:viewControllers];
//设置代理
_slideSwitch.delegate = self;
//设置按钮选中和未选中状态的标题颜色
_slideSwitch.itemSelectedColor = RedColor;
_slideSwitch.itemNormalColor = GrayColor;
标题显示在ViewController中:

[_slideSwitch showInViewController:self];
标题显示在NavigationBar中:

[_slideSwitch showInNavigationController:self.navigationController];
3、代理方法

-(void)slideSwitchDidselectTab:(NSUInteger)index{
NSLog(@"切换到了第 -- %zd -- 个视图",index);
}

下载地址:http://www.wenjiangs.com/wp-content/uploads/2021/docimg35/83ca9ed6be98a0bb4100b2b093d508b9.zip

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文