做ios工程时,把UI从xib移动到代码中遇到的问题
2013-11-05 19:32
477 查看
由于四期要做多语言版本,带xib页面的工程做多语言版本比较麻烦,再加上现在已经习惯了代码中的viewdidload函数中初始化控件,所以就把两个页面从xib移到代码中去了。
在修改后加载页面会遇到bad access问题,后来发现还是自己粗心导致的某一个控件被多release一次。但是在调试过程中发现我的viewdidload被重复调用两次。下面附上程序代码:
setgroupid函数为:
即每次都是在最后一句:
后调用viewdidload函数,然后程序运行至
处又会进入到viewdidload里面执行。
后来仔细看了一下UIViewController.h中的注释发现原来是这么回事:如果我们在调用view的时候,view还没有初始化,就调用它父类的viewdidload函数,然后pushViewController函数还会再次调用该viewdidload
在修改后加载页面会遇到bad access问题,后来发现还是自己粗心导致的某一个控件被多release一次。但是在调试过程中发现我的viewdidload被重复调用两次。下面附上程序代码:
//群组成员管理 ChatManagerViewCtrller* chatCtrller = [[ChatManagerViewCtrller alloc]init]; [chatCtrller setGroupId:_chatUser.mName_md5]; chatCtrller.groupInfo = _chatUser; [self.navigationController pushViewController:chatCtrller animated:YES]; [chatCtrller release];
setgroupid函数为:
- (void) setGroupId:(NSString*)groupId { //groupId = @"ff80808140ee5ea20140f288c0dd0021"; [mGroupId release]; mGroupId = [groupId retain]; [self getGroupInfo]; } -(void)getGroupInfo { RequestGetGroupInfo *getGroupInfo = [[RequestGetGroupInfo alloc]init]; getGroupInfo.receiveDelegete = self; getGroupInfo.groupId = mGroupId; [[NetworkModel sharedInstance]sendRequest:getGroupInfo]; [getGroupInfo release]; [DSBezelActivityView activityViewForView:self.view withLabel:@"获取群组信息中..." width:120]; }
即每次都是在最后一句:
[DSBezelActivityView activityViewForView:self.view withLabel:@"获取群组信息中..." width:120];
后调用viewdidload函数,然后程序运行至
[self.navigationController pushViewController:chatCtrller animated:YES];
处又会进入到viewdidload里面执行。
后来仔细看了一下UIViewController.h中的注释发现原来是这么回事:如果我们在调用view的时候,view还没有初始化,就调用它父类的viewdidload函数,然后pushViewController函数还会再次调用该viewdidload
@property(nonatomic,retain) UIView *view; // The getter first invokes [self loadView] if the view hasn't been set yet. Subclasses must call super if they override the setter or getter.
相关文章推荐
- iOS开发遇到的坑之五--解决工程已存在plist表,数据却不能存入的问题
- ios移动开发遇到的一些小问题的解决办法
- iOS 开发中的争议(二)UI到底应该用xib/storyboard完成,还是用手写代码来完成?
- iOS xib自动布局时遇到的一些问题
- iOS 防止崩溃之代码保护注意措施初级剑侠篇(欢迎提建议和分享遇到的问题)
- ios集成环信 easeUI SDK 3.0 SDK 2.0 出错遇到的所有问题
- IOS开发之Bug--使用xib的自动布局和代码中修改遇到的bug
- 代码手写UI,xib和StoryBoard间的博弈(IOS)
- cuda 自己创建工程,复制sdk中的代码,执行遇到的问题
- iOS色彩空间——xib和代码设置颜色的偏差问题
- iOS 11更新后及iPhone X推出后工程中遇到的问题及适配方法
- iOS使用xib自定义UIView 遇到的问题
- druid-1.0.21源代码导入eclipse工程遇到的问题
- iOS 工程 兼容64位 容易遇到的问题
- [转载]ios app 发布遇到的问题uinewsstandapp=true
- iOS 引入库工程遇到的问题
- iOS xib与代码一起使用时的视图加载问题
- 将一个工程中的代码复制进另一个新建的工程遇到如下问题,谨以此记。
- ios app 发布遇到的问题uinewsstandapp=true
- iOS UI、Xcode、调试、代码等常见问题总汇(持续更新中)