第三方MBXPageViewController的使用和注意事项
GitHub的地址: https://github.com/Moblox/MBXPageViewController
介绍SegmentController的使用:
- (void)createSegmentView { CGFloat segmentX = (K_SCREEN_WIDTH - )/;
CGFloat topHeight = .f;
CGFloat segmentY = (topHeight - K_SEGMENTED_CONTROL_HEIGHT) * 0.5 + ;
CGFloat segmentWidth = ;
UISegmentedControl *segmentControl = [[UISegmentedControl alloc] initWithItems:@[@"申请信息",@"审批操作"]];
segmentControl.frame = CGRectMake(segmentX, segmentY, segmentWidth, K_SEGMENTED_CONTROL_HEIGHT);
segmentControl.selectedSegmentIndex = ;
segmentControl.tintColor = MAIN_COLOR;
[self.view addSubview:segmentControl];
self.segmentControl = segmentControl; UIView *containerView = [[UIView alloc] initWithFrame:CGRectMake(, topHeight + , K_SCREEN_WIDTH, K_SCREEN_HEIGHT - K_STATUS_BAR_AND_NAVI_BAR_HEIGHT - topHeight)];
[self.view addSubview:containerView];
self.containerView = containerView; self.MBXPageController = [MBXPageViewController new];
self.MBXPageController.MBXDataSource = self;
self.MBXPageController.MBXDataDelegate = self;
self.MBXPageController.pageMode = MBX_SegmentController;
[self.MBXPageController reloadPages];
[self MBXPageChangedToIndex:];
}
代理使用如下:
#pragma mark - MBXPageViewController Data Source - (NSArray *)MBXPageButtons {
return @[self.segmentControl];
} - (UIView *)MBXPageContainer {
return self.containerView;
}
// 给控制器传递数据在此代理写!!!
- (NSArray *)MBXPageControllers { ApplyInfoViewController *appVc = [ApplyInfoViewController new];
appVc.idString = self.model.idString; RepairCheckViewController *checkVc = [RepairCheckViewController new];
checkVc.idString2 = self.model.idString;
return @[appVc, checkVc];
} #pragma mark - MBXPageViewController Delegate
// 给控制器传递数据不能再这里写!!!否则不能刷新表视图!!!
- (void)MBXPageChangedToIndex:(NSInteger)index { // if (index == 0) {
// NSLog(@"111");
// ApplyInfoViewController *applyInfoVc = self.MBXPageControllers[0];
// [self.containerView addSubview:applyInfoVc.view];
// applyInfoVc.idString = self.model.idString;
//// applyInfoVc.model = self.model;
// }
// else {
// NSLog(@"222");
// RepairCheckViewController *checkVc = self.MBXPageControllers[1];
// [self.containerView addSubview:checkVc.view];
// checkVc.idString2 = self.model.idString;
//// checkVc.model = self.model;
// }
}
总结:
1.表视图cellForRow不执行的原因如下几种:
1>.dataSource和delegate没有设置
2>.numberOfRowsInSection和numberOfRowsInSection返回的数据不是大于0的整数
3>.tableView没有添加到父视图上(这种情况,第2点种的方法都执行了)
2.使用第三方框架的时候一定要先熟悉使用方法,不然会在使用上浪费很多时间.
花了一天的时间找问题,很高兴最后还是找到问题所在了,还是学到了点东东.....好开心,加油!!!
第三方MBXPageViewController的使用和注意事项的更多相关文章
- Xamarin开发笔记—设备类&第三方弹窗的使用和注意事项
一.设备类是Xamarin重要开发组成部分,下面介绍一下设备类的主要用法: //唤醒打电话 Device.OpenUri(new Uri("tel:180xxxxxxxx")); ...
- iOS开发进阶
<iOS开发进阶>基本信息作者: 唐巧 出版社:电子工业出版社ISBN:9787121247453上架时间:2014-12-26出版日期:2015 年1月开本:16开页码:268版次:1- ...
- Xamarin开发笔记—百度在线语音合成
语音合成:也被称为文本转换技术(TTS),它是将计算机自己产生的.或外部输入的文字信息转变为可以听得懂的.流利的口语输出的技术. 技术选型:语音合成初步选择有两个,一是讯飞.二是百度. 因为使用的是X ...
- Xamarin开发笔记—WebView双项事件调用
1.Xamarin调用WebView: 原理:Xamarin.Forms WebView内置方法xx.Eval(..)可以调用到页面里面的js函数. WebView展示的代码如下: var htmlS ...
- 关于 调用 JNI JAR 的说明和注意事项,调用第三方 JAR SDK 和 翻译 安卓 JAVA 代码 的说明 V2015.6.10
关于 调用 JNI JAR 的说明和注意事项,调用第三方 JAR SDK 和 翻译 安卓 JAVA 代码 的说明 V2015.6.10 转载请标明出处,否则死全家.选择[复制链接]即可得到出处. (* ...
- ASP.NET和支付宝合作开发第三方接口的注意事项
最近公司和支付宝合作开发第三方接口的项目,这里把过程中需要注意的地方说明一下: 前提:一般来说单个银行不接收个人或私企开通支付接口.因此,和第三方支付公司合作,签订合约开放接口就是通行的做法. 流程: ...
- AbpZero之企业微信---登录(拓展第三方auth授权登录)---第三步:需要注意事项
1.AbpZero的auth登录会在数据库中的AbpUserLogins表会根据你登录的ProviderKey和Provider来生成生成一条记录,ProviderKey在表中是唯一的: 2.要登录成 ...
- Windows Server 2012 NIC Teaming介绍及注意事项
Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...
- Swift和Objective-C混编注意事项
前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,大大降低了iOS入门门槛.当然这对新入行的童鞋没来讲,的确算是福音,但对于整个iOS编程从业者来讲 ...
随机推荐
- new和delete用法小结
在C语言中是利用库函数 malloc 和 free 函数来分配和撤销内存的.C++提供了较简便而功能较强的运算符 new 和 delete 来取代 malloc 和 free 函数. new 和 de ...
- python+Appium自动化:logging配置代码分离
配置文件信息log.conf: [loggers]keys=root,simpleExample [logger_root]level=DEBUGhandlers=consoleHandler,fil ...
- 关于log4j的配置文件
因为要在spring中添加Mongodb,在网上查阅资料的时候我发现有人在web.xml中添加如下代码: <context-param> <param-name>l ...
- java 文件上传与解析(excel,txt)
excel上传与解析 https://blog.csdn.net/zsysu_it/article/details/79074067 txt解析 https://blog.csdn.net/CSDNw ...
- 支付宝支付之扫码支付(电脑网站支付)、H5支付(手机网站支付)相关业务流程分析总结
前言 在上一篇文章<微信支付之扫码支付.公众号支付.H5支付.小程序支付相关业务流程分析总结>中,分析和总结了微信支付相关支付类型的业务流程,这里作为与微信支付平起平坐不相伯仲的支付宝支付 ...
- 使用CreateRemoteThread注入DLL
DLL: // dllmain.cpp : Defines the entry point for the DLL application. #include "stdafx.h" ...
- 如何在某些情况下禁止提交Select下拉框中的默认值或者第一个值(默认选中的就是第一个值啦……)
群里有个帅哥问了这么个问题,他的下拉框刚进页面时是隐藏起来的,但是是有值的,为啥呢?因为下拉框默认选中了第一个值呗,,, 所以提交数据的时候就尴尬啦,明明没有选,但是还是有值滴.怎么办呢? 一开始看到 ...
- html背景图不随滚轮滚动,而且按住Ctrl并滚动滚轮时,图片不会变大缩小,就像百度的首页一样
之前在百度知道我提问过这一个问题,后来解决了.不过好多人来问我时怎么解决的,源码.其实很简单.这里我贴一下代码.有需要的小伙伴不用再加我qq了,直接来这里取吧. 里面的图片是我随便找的. <!D ...
- 前端接受base64的excel,点击立即下载
由于使用框架的特殊性,后台返回的文件流进行了base64加密,所以返回的是base64格式,所以需要将其转变为blob,上代码
- http的get与post
1.http请求 http有两种报文,请求报文 (发送请求,可能包含数据)和响应报文(服务器响应请求获取数据).一个http请求报文由请求行,请求头部,空行和请求正文(数据)四个部分组成. HTTP请 ...