要在一个UIView里添加另一个UIViewcontroller的view要怎么做

 我来答
匿名用户
2017-09-17
展开全部
方法/步骤:创建工程项目和视图控制器创建工程项目UICollectionView,新建一个UIViewController。选中工程,右键-NewFile…选择“CocoaTouchClass”-Next,给个合理的名称ViewController,再Next完成。在AppDelegate.m文件包含#import"ViewController.h"。添加代码:UINavigationController*navC=[[UINavigationControlleralloc]initWithRootViewController:[[ViewControlleralloc]init]];self.window.rootViewController=navC;//将navC设置为根视图控制器。修改一下ViewController的显示样式,执行编译,run一下,效果如图。创建自定义UICollectionViewCell选中工程,右键-NewFile…选择“CocoaTouchClass”-Next,选择继承于UICollectionViewCell类,给个合理的名称CollectionViewCell,再Next完成。1、自定义所需要的控件,比如UIImageView:@property(nonatomic,strong)UIImageView*imgView;2、初始化控件,在方法-(id)initWithFrame:(CGRect)frame中实现:self.imgView=[[UIImageViewalloc]initWithFrame:CGRectMake(0,30,150,140)];self.imgView.backgroundColor=[UIColorgroupTableViewBackgroundColor];[selfaddSubview:self.imgView];创建UICollectionView及添加代理1、在ViewController.h添加事件代理和数据源代理。2、在ViewController.m创建UICollectionView。需要使用UICollectionViewFlowLayout来创建,使用方法-(instancetype)initWithFrame:(CGRect)framecollectionViewLayout:(UICollectionViewLayout*)layout;如果只用普通的init方法,是实现不了的。4、代理授权并添加至视图。self.collectionView.delegate=self;self.collectionView.dataSource=self;[self.viewaddSubview:self.collectionView];把UICollectionViewCell添加到UICollectionView内1、注册CollectionViewCell,添加cell需要在这里实现。方法:-(void)registerClass:(Class)cellClassforCellWithReuseIdentifier:(NSString*)identifier;2、添加代理方法//定义展示的UICollectionViewCell的个数-(NSInteger)collectionView:(UICollectionView*)collectionViewnumberOfItemsInSection:(NSInteger)section;//定义展示的Section的个数-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView*)collectionView;//每个UICollectionView展示的内容-(UICollectionViewCell*)collectionView:(UICollectionView*)collectionViewcellForItemAtIndexPath:(NSIndexPath*)indexPath;设置UICollectionView中的属性//定义每个UICollectionView的大小(返回CGSize:宽度和高度)-(CGSize)collectionView:(UICollectionView*)collectionViewlayout:(UICollectionViewLayout*)collectionViewLayoutsizeForItemAtIndexPath:(NSIndexPath*)indexPath;//定义每个UICollectionView的间距(返回UIEdgeInsets:上、左、下、右)-(UIEdgeInsets)collectionView:(UICollectionView*)collectionViewlayout:(UICollectionViewLayout*)collectionViewLayoutinsetForSectionAtIndex:(NSInteger)section;//定义每个UICollectionView纵向的间距-(CGFloat)collectionView:(UICollectionView*)collectionViewlayout:(UICollectionViewLayout*)collectionViewLayoutminimumInteritemSpacingForSectionAtIndex:(NSInteger)section;//UICollectionView被选中时调用的方法-(void)collectionView:(UICollectionView*)collectionViewdidSelectItemAtIndexPath:(NSIndexPath*)indexPath;
就烦条0o
2018-07-25 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46489
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
其实是为了在cocos2dx下自己封装iOS功能,为了实现在app内部弹出Appstore的页面。因为我没找到cocos里当下页面的
UIViewController,但是oc显示appstore页面需要另一个UIViewcontroller,取不到当前的
viewcontroller就跳不出来下一个,所以。。。只能用这种方式权宜了。。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式