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. LeetCode_Bit Manipulation

    231. Power of Two Given an integer, write a function to determine if it is a power of two. class Sol ...

  2. 用xshell连接l自己的inux

    有时候连接会提示失败(当然确保账号密码没错),这里需要安装一个服务,ssh服务器 1)ubuntu安装ssh服务器 sudo apt-get install openssh-server 2)出现问题 ...

  3. springmvc其他类获取request记得web.xml

    <listener> <listener-class>org.springframework.web.context.request.RequestContextListene ...

  4. 记Springcloud Config Service整合gitlab一坑

    spring.cloud.config.server.git.uri=http://ip/***/configserver.git必须加上.git

  5. 微信小程序没找到构建npm或者没找到node_modules目录以及如何在小程序中引入vant weapp组件

    微信小程序没找到构建npm或者没找到node_modules目录解决方法如下: 按照微信小程序提供的文档npm install是不行的,直接提示没找到可构建的npm包. 1.直接安装:npm init ...

  6. C# Stopwatch 延时

    using System; using System.Diagnostics; using System.Runtime.InteropServices; using System.Threading ...

  7. (转)Android中图片占用内存计算

    在Android开发中,我现在发现很多人还不会对图片占用内存进行很好的计算.因此撰写该博文来做介绍,期望达到抛砖引玉的作用.   Android中一张图片(BitMap)占用的内存主要和以下几个因数有 ...

  8. 在angular中使用ng-repeat时数组中有重复元素,要用item in items track by $index

    在angular中使用ng-repeat时数组中有重复元素,要用item in items track by $index,不然会报错 <div class="" ng-in ...

  9. Redis常见面试问题及答案

    大量key在同一时间过期,注意什么? 如果过期时间过于集中,会导致Redis可能会出现短暂的卡顿现象.严重的话会出现缓存雪崩,一般需要在时间上加一个随机值, 使用过期时间分散一些. Redis分布式锁 ...

  10. Spring Boot 之 Profile --快速搞定多环境使用与切换

    Spring Profile是Spring3引入的概念,主要用在项目多环境运行的情况下,通过激活方式实现多环境切换,省去多环境切换时配置参数和文件的修改,并且Spring profile提供了多种激活 ...