代码精华部分如下:

//1.添加scrollView  /* 1). 添加一个scrollView;2).创建关注、热门、附近三个控制器。3). 存储它们的名字到数组中,遍历并放到本控制器里。4).设置scrollView的contentSize.5).设置scrollview的偏移量。6).调用当停止动画的方法设置为当前的scrollView.(应该是停止拖拽的方法)*/NSArray *controls = @[@"STRFollowViewController",@"STRHotViewController",@"STRNearViewController"];for (NSInteger i = 0; i < controls.count; i++) {UIViewController *vc = [[NSClassFromString(controls[i])  alloc] init];vc.title = self.titleNames[i];[self addChildViewController:vc];}self.MainScrollView.contentSize = CGSizeMake(self.titleNames.count *[UIScreen mainScreen].bounds.size.width , 0);self.MainScrollView.contentOffset = CGPointMake(SCREEN_WIDTH, 0);[self scrollViewDidEndDecelerating:self.MainScrollView];
}
//2.设置代理
#pragma mark scrollViewDelegate
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{[self scrollViewDidEndScrollingAnimation:scrollView];
}
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{/**1. 获取宽度和高度,还要打开分页功能2. 获取索引值。3. 设置偏移量4. 设置viewframe,如没有加载过再加载,否则不返回5. 添加子控制器view到scrollview上*/NSInteger width = SCREEN_WIDTH;NSInteger height = SCREEN_HEIGHT;CGFloat offsetX = scrollView.contentOffset.x;NSInteger index = offsetX/width;[self.topView topViewWithIndex:index];UIViewController *vc = self.childViewControllers[index];if ([vc isViewLoaded]) return;vc.view.frame = CGRectMake(offsetX, 0, width, height);[self.MainScrollView addSubview:vc.view];
}
//3.添加topView- (STRTopView *)topView{if (!_topView) {_topView = [[STRTopView alloc] initWithFrame:CGRectMake(0, 0, 200, 44) titleNames:self.titleNames tagBlock:^(NSInteger index) {[self.MainScrollView setContentOffset:CGPointMake(index *SCREEN_WIDTH, 0) animated:YES];}];}return _topView;
}

转载于:https://www.cnblogs.com/TheYouth/p/6257197.html

ScrollView分栏视图分析相关推荐

  1. JS导出Word默认页面视图、横向、分栏、设置固定页眉显示

    JS导出Word默认页面视图.横向.分栏.设置固定页眉 显示 JS导出Word默认页面视图.横向.分栏显示 JS导出Word默认页面视图.横向.分栏显示.固定页眉 styles设置为空:WPS无法默认 ...

  2. 【LaTeX】 案例分析 (9) - MCM 2021 - 目录 / 伪代码 / 分栏 / 文字框 / 组合图 / 表格排版 / 公式编号

    小组选择题目为 MCM 2021 - A题 Fungi (真菌) Final Result: Honorable Mention 注: 其中很多环境运用到的环境所需宏包(package)可能不太清楚了 ...

  3. HTML怎么把文字分栏_PPT文字巨多!领导还不让删,怎么排版才高大上?

    ​本文由公众号"跟我学个P"首发. 嗨,各位木友们好呀,我是小木. 如标题所言,做PPT碰到这种"文字巨多.而且领导还不让删.并且强行要求你必须做得高大上"的情 ...

  4. 设置TabBar分栏控制器上图片的大小问题

    我们都知道,iOS因为屏幕分辨率的问题,UID在交付我们iOS开发人员程序配图的时候,一般是三套图,分别对应三种不同的分辨率,对不同size的屏幕系统会自动使用不同像素的图片,我们只需要在命名时给三套 ...

  5. 如何在word写小论文在正文分栏后第一页左下角添加 项目 基金 作者简介 (添加通栏脚注)

    (之前写小论文发期刊遇到的添加项目基金 作者简介的问题在这里记录一下) 1.打开视图里的草稿界面 2.把光标放在(点击)文章作者后面 3.点击 引用 界面 打开脚注扩展到脚注和尾注界面 按图中所示点击 ...

  6. 手机wps取消不等宽分栏_如何取消分栏 - 卡饭网

    Word 2007中取消分栏的技巧 Word 2007中取消分栏的技巧 前面我们了解了在Word2007中分栏的设置,相信很多朋友已经学会了,而如果想要对网上下载的分栏文档中进行取消,该怎么办呢?下面 ...

  7. 解决安卓刷新recyclerView时导致itemDecoration分栏标题绘制错乱(重叠和隔空现象)

    安卓的 itemDecoration 装饰器是个好东西,可以与adapter适配器一样闪耀.但是刷新的时候有可能发生重叠绘制或者莫名隔空的BUG. 三.原作 本文分栏标题装饰器的原作者为简书博主end ...

  8. 计算机分栏过程,计算机基础与程序设计-要点分栏.docx

    计算机基础与程序设计-要点分栏 1-1-操作系统包括:1单用户操作系统,DOS;2批处理操作系统:3分时操作系统,UNIX,VMS;4实时操作系统时操作系统,VsWorks;5网络操作系统,netwa ...

  9. fastreport 横向分栏_为什么大家现在放弃使用Excel,而选择第三方报表工具呢?...

    Excel是一个电子表格程序,而不是一个数据库程序.Excel数据处理容量和速度有限制,数据可视化程度不高,都是以表格为主,虽然也能插入一些图表,但是灵活度和美观度不够,设置起来也相当麻烦,并且数据获 ...

最新文章

  1. Mac-sublime text 3破解版
  2. 论文合集 | 李飞飞新论文:深度学习代码搜索综述;Adobe用GAN生成动画(附地址)...
  3. 腾讯员工吐槽:团队来了个阿里高p,瞬间会议变多,群多了
  4. oracle用dba登陆怎么登,以SQLDBA身份登录isqlplus
  5. Going Home
  6. 左神算法:用栈来求解限制后的汉诺塔问题(Java版)
  7. 好的物联网开源框架_通过开源文化实现更好的物联网
  8. 1月3日 升 级gazebo7
  9. JQ 按钮实现两种功能
  10. mysql utf8 bom_UTF8的BOM
  11. 有关电子邮箱的各种协议
  12. 大数据平台基础架构hadoop安全分析
  13. 2022腾讯云学生服务器申请流程(全攻略)
  14. JavaScript中浏览器兼容性解决办法
  15. 13.SpringBoot学习(十三)——JDBC之 Spring Boot Jpa多数据源
  16. Pytorch深度学习笔记(02)--损失函数、交叉熵、过拟合与欠拟合
  17. 如何在素材中心中下载字体并安装?
  18. 社区-发表评论和回复评论
  19. 百度Ai实现网络图片文字识别--Java
  20. Mysql解决中文乱码

热门文章

  1. 【高级Java架构师系统学习】java十六进制字符串转数字
  2. 【设计思想解读开源框架】java监听模式和观察者模式
  3. 【2021年度训练联盟热身训练赛第二场】g2g c u l8r(python)
  4. 【深度学习入门到精通系列】Deep Q Network
  5. python【力扣LeetCode算法题库】17-电话号码的字母组合
  6. delphi oracle新建用户,Delphi 中如何用另外一个用户的身份来运行一人程序
  7. php获取图高度,PHP imagesx()、imagesy() – 获取图像宽度与高度_程序员人生
  8. android 上拉隐藏布局,Recycleview上拉隐藏与下拉显示
  9. java特征向量计算_用Java和Python计算特征向量的差异
  10. Java 抖音授权登录