不忘初心,方得始终
因为作者非常喜欢这类资讯应用的浏览方式,再加上最近的项目需要使用,于是 LPNavPageVC 就诞生了。
LPPageVCSegmentStyleDefault
LPPageVCSegmentStyleLineHighlight
来实现我今年写十个库的计划
方法一:使用 CocoaPods 导入:pod 'LPNavPageVC'
方法二:将 LPNavPageVC
文件夹导入到您的项目中(文件夹在 Demo - S - L 中可以找到)
首先需要使用的VC请继承于LPPageVC(如果你不懂继承 .. Google)
其次我们需要遵守LPPageVCDataSource、LPPageVCDelegate两个协议并且实现相关方法
`#pragma LPPageVCDataSource - 设置点击pageVCIndex的vc - (UIViewController *)pageVC:(LPPageVC *)pageVC viewControllerAtIndex:(NSInteger)index
# pragma LPPageVCDataSource - 设置点击pageVCIndex的title
- (NSString *)pageVC:(LPPageVC *)pageVC titleAtIndex:(NSInteger)index
# pragma LPPageVCDataSource - 设置栏目的个数
- (NSInteger)numberOfContentForPageVC:(LPPageVC *)pageVC
# pragma LPPageVCDelegate - 将要改变到index
- (void)pageVC:(LPPageVC *)pageVC willChangeToIndex:(NSInteger)toIndex fromIndex:(NSInteger)fromIndex
# pragma LPPageVCDelegate - 已经改变到index
- (void)pageVC:(LPPageVC *)pageVC didChangeToIndex:(NSInteger)toIndex fromIndex:(NSInteger)fromIndex
# pragma LPPageVC - 刷新数据
- (void)reloadData
# pragma LPPageVC - 刷新一个具体的栏目
- (void)reloadDataAtIndex:(NSUInteger)index;
# pragma LPPageVC - 根据index获取对应的vc
- (UIViewController *)viewControllerAtIndex:(NSUInteger)index;
`
`// 第三步 -> 设置代理并且实现相关方法 self.delegate = self; self.dataSource = self;
// 设置样式 - 两种样式
self.segmentStyle = LPPageVCSegmentStyleDefault;
self.segmentStyle = LPPageVCSegmentStyleLineHighlight; // 白色高亮在这个样式下不是很明显 自己修改
// 设置颜色
self.normalTextColor = [UIColor blackColor]; // 标签normal
self.higlightTextColor = [UIColor whiteColor]; // 标签higlight
self.lineBackground = [UIColor orangeColor]; // 标签背景颜色
// 切记刷新界面数据
[self reloadData];
`
本项目采用 MIT license 开源,你可以利用采用该协议的代码做任何事情,只需要继续继承 MIT 协议即可。
PS:在此鸣谢我的美工 Ms吴.. 以及在 CocoaChina 提出建议的 hanhaipeng。Thanks