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的使用和注意事项的更多相关文章

  1. Xamarin开发笔记—设备类&第三方弹窗的使用和注意事项

    一.设备类是Xamarin重要开发组成部分,下面介绍一下设备类的主要用法: //唤醒打电话 Device.OpenUri(new Uri("tel:180xxxxxxxx")); ...

  2. iOS开发进阶

    <iOS开发进阶>基本信息作者: 唐巧 出版社:电子工业出版社ISBN:9787121247453上架时间:2014-12-26出版日期:2015 年1月开本:16开页码:268版次:1- ...

  3. Xamarin开发笔记—百度在线语音合成

    语音合成:也被称为文本转换技术(TTS),它是将计算机自己产生的.或外部输入的文字信息转变为可以听得懂的.流利的口语输出的技术. 技术选型:语音合成初步选择有两个,一是讯飞.二是百度. 因为使用的是X ...

  4. Xamarin开发笔记—WebView双项事件调用

    1.Xamarin调用WebView: 原理:Xamarin.Forms WebView内置方法xx.Eval(..)可以调用到页面里面的js函数. WebView展示的代码如下: var htmlS ...

  5. 关于 调用 JNI JAR 的说明和注意事项,调用第三方 JAR SDK 和 翻译 安卓 JAVA 代码 的说明 V2015.6.10

    关于 调用 JNI JAR 的说明和注意事项,调用第三方 JAR SDK 和 翻译 安卓 JAVA 代码 的说明 V2015.6.10 转载请标明出处,否则死全家.选择[复制链接]即可得到出处. (* ...

  6. ASP.NET和支付宝合作开发第三方接口的注意事项

    最近公司和支付宝合作开发第三方接口的项目,这里把过程中需要注意的地方说明一下: 前提:一般来说单个银行不接收个人或私企开通支付接口.因此,和第三方支付公司合作,签订合约开放接口就是通行的做法. 流程: ...

  7. AbpZero之企业微信---登录(拓展第三方auth授权登录)---第三步:需要注意事项

    1.AbpZero的auth登录会在数据库中的AbpUserLogins表会根据你登录的ProviderKey和Provider来生成生成一条记录,ProviderKey在表中是唯一的: 2.要登录成 ...

  8. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  9. Swift和Objective-C混编注意事项

    前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,大大降低了iOS入门门槛.当然这对新入行的童鞋没来讲,的确算是福音,但对于整个iOS编程从业者来讲 ...

随机推荐

  1. Winform Global exception and task parallel library exception;

    static class Program { /// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static vo ...

  2. Reflector破译

    一:安装: 这个在包里,自己安装 二:注册 1. 断网2. 运行.NET Reflector,点击Help -> Activate 3. 运行注册机,复制注册机生成的序列号,粘贴到.NET Re ...

  3. ORACLE纯SQL实现多行合并一行

    项目中遇到一个需求,需要将多行合并为一行.表结构如下:NAME                            Null           Type---------------------- ...

  4. tp5.1引用第三方类库

    1.TP5第三方类库全部放在Extend目录内,如果是放在Extend目录下,则不需要再类库里声明namespace.直接 new \YourClass() 即可 2.如果你的类库在Extend的子目 ...

  5. 用DevExpress.textEdit控件限定数据录入格式

    例:只允许输入4位数字 第一步 第二部 例:只允许IP格式 设置Mask属性项的EditMask属性值为:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5 ...

  6. electron-vue 升级 从2.x升级到4.x的坑

    子窗口 2.x modal为true let messageRightMenu = new BrowserWindow({ // height: 170, // width: 70, useConte ...

  7. Oracle体系结构2

    Buffer Cache 作用:缓存dbf中的数据 例子:A和B重复访问同一张表的几率是很大的,如果每次访问dbf时都要发生物理IO,这样会导致数据库的性能非常低 由于这个例子,当一个进程访问dbf时 ...

  8. QT:如何重新生成makefile文件

  9. C# 使用vs2013 写 windows服务

    第一步:添加windows服务项目 并起一个 好看的名字 第二步:添加安装程序 第三步:右键点击serviceProcessInstaller1属性,在Account中选择LocalSystem 第四 ...

  10. C# 写日志的方法

    public void WriteLog(string msg)        {            string filePath = AppDomain.CurrentDomain.BaseD ...