您的位置:首页 > 移动开发 > IOS开发

iOS开发-网易滚动导航栏

2016-03-27 16:52 453 查看

HACursor,是一个对横向ScrollView中的视图进行管理的UI控件。只要几行代码就可以集成类似于网易新闻对主题页面进行排序,删除操作的功能。主srollview参考iOS原生的UITableView的接口设计思路,实现了缓存,避免了一次性加载多个页面所造成的性能消耗。






1.导入HACursor框架

从github上下载需要的框架,下载完成以后只需要将项目中的HACursor导入所需要的过程即可,如下图:





HACursor

2.引入头文件

在视图控制器中引入头文件:

#import "HACursor.h"

3.在viewDidLoad方法中,配置HACursor

@interface ViewController ()

@property (nonatomic,strong) NSArray *titles;//顶部视图的内容

@end

- (void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

titles = @[@"网易",@"新浪",@"腾讯",@"苹果",@"搜狐",@"淘宝",@"京东",@"百度",@"有道",@"小米",@"华为",@"三星"];

HACursor *cursor = [[HACursor alloc]init];

cursor.frame = CGRectMake(0, 64, self.view.width, 45);

cursor.titles = titles;

//每个子视图显示的内容

cursor.pageViews = [self createPageViews];//此方法必需使用,pageView需要展示的内容按按照需求自定义

//设置根滚动视图的高度

cursor.rootScrollViewHeight = self.view.frame.size.height - 109;

//默认值是白色

cursor.titleNormalColor = [UIColor whiteColor];

//默认值是白色

cursor.titleSelectedColor = [UIColor redColor];

cursor.showSortbutton = YES;

//默认的最小值是5,小于默认值的话按默认值设置

cursor.minFontSize = 6;

[self.view addSubview:cursor];

}

//用webView展示

- (NSMutableArray *)createPageViews{

NSMutableArray *pageViews = [NSMutableArray array];

NSArray *webViewArray = @[@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com",@"http://www.baidu.com"];//对应的标题用对应的网址

//分别展示每个page下面的webView

for (NSInteger i = 0; i < self.titles.count; i++) {

UIWebview webView *web = [[webView alloc]init];

NSString *str = [NSString stringWithFormat:@"%@",[webViewArray objectAtIndex:i]];

NSURL *url = [NSURL URLWithString:str];

NSURLRequest *urlRequest = [[NSURLRequest alloc]initWithURL:url];

[web loadRequest:urlRequest];

[pageViews addObject:web];

}

return pageViews;

}

4.设置属性

HACursor提供了一系列属性,可以根据自己的项目选择所需要的属性,添加到viewDidLoad中

//显示的标题栏的标题(必选!!)

cursor.titles = self.titles;

//需要管理的子页面(必选!!)

cursor.pageViews = self.pageViews;

//设置rootScrollView的高度(必选!!)

cursor.rootScrollViewHeight = self.view.frame.size.height - 65;

//设置标题普通状态下的颜色

cursor.titleNormalColor = [UIColor whiteColor];

//设置标题选中状态下的颜色

cursor.titleSelectedColor = [UIColor redColor];

//是否需要显示排序的按钮

cursor.showSortbutton = YES;

//设置背景颜色

cursor.backgroundColor = [UIColor yellowColor];

//设置最小化的字体

cursor.minFontSize = 10.0;

//设置最大化的字体

cursor.maxFontSize = 30.0;

//设置是否需要渐变字体的大小

cursor.isGraduallyChangFont = NO;

//设置是否需要渐变字体的颜色

cursor.isGraduallyChangColor = NO;

案例下载

WYDemo
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: