1,不能实时检测网络。即只在becomeActivity时检测---------可以通过审核。
2,在appdelegate中加入模块VC,原因---实现一种状态存贮方式,单例模式。此时推出VC时,需在back中clear()数据--->重用性的VC,避免下次用时仍存在上次的数据未清理.
3,若用nib文件时做继承是否可以,有什么方法。---不可以,代码实现之。
4,[self.timer invalidate];是否可行?可行,销毁NSTimer。
又见的另外一种销毁timer的方式(未验证):[_timerinvalidate];[_timerrelease];_timer =nil;
5,[self.view addsubview:self.anView];问题---anView的retainCount值是增加了1,self.view销毁时anView的retainCount减1。
6,self.view.window的意义-->判定其是否可视;self.view.superView->判定其是否被add到某view上。
7,page1加载完成,在加载page2时如果断网,则无法继续加载问题的解决方案?---在加载page2失败时重新加载之.
8,IBOutlet的生命周期(在非ARC下):
关于iboutlet,
IBOutlet img*one;
@property(non,retain)IBOoutlet img*one;
@synthsize one;
viewdidUnload{
[super unload];
self.one=nil;
}
dealloc{
[one release];
[super dealloc];
}
9,当app升级时,存在document路径下的东西会被保存的(尚未证实),另外userdefaults也可以存储一点数据(正确,已证实之)。如果用户删除了程序再安装的话,肯定是丢数据的。
10,appdelegate中当ios是5.0或者是5.0.1时,网络不通时的alert有设置按钮,否则无--已验证。
因为只有5.0和5.0.1的IOS才响应prefs:等的事件。解决:只有在5.0和5.0.1中调用系统的设置命令才有效,不适用于其它版本--正确。
11,ios6.0以上,statusbar颜色会随着app导航栏的颜色变化而变化,可以为之认为静态设定一种固有颜色。--证实之
认为更改:
1,plist中修改相关属性。
2,代码实现:if ([user.iOSversion floatValue] > 5.1)
{
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque];
}
12,关于iPhone图标Icon,注意裁剪时图标周围不要出现锯齿,否则真机调试时,阴影会很明显。
13,获取某一UITableView中的多种cell之一时,方法:1,用tag标记;2,更优的解决方案:判断其reuseIdentifier即可。
14,运用CALAyer时,若有卡顿感,可能与之有关。原因不明。
15,在i++和++i之间,优先选择++i,效率更高。
16,模拟器中app的路径:资源库-->App Support-->iPhone Simulator-->6.0-->Applications-->75BCF894-BCAD-4507-83A7-5D2453344463
17,nib中一个Btn,选中它并且在Editor菜单里将至设置为Size to Fit Content,此选项位置?---自己添加,默认可能未加上。view->add Editor
18,内存警告后,ctler会重新reload。主要是除了IBOutlet之外的subView,若无retain就不能再次使用了。---ARC解决了此问题。
19,诸如gtmhttpFetcher,多次return auto变量。-没有关系,不产生泄露。
20,SBJson可以自动支持arc,jsonKit不支持。(未证)
21,
int numSpiders=[spiderscount];
for(int i=0;i<numSpiders;i++)
{
}
诸如此类,不课在for里条用方法,这样可以大大节省cpu。
22,递加tableVIew中cell的方式:
1,reloadData
2,逐个增加:
[self.players addObject:anPlayer];---a,数据源
NSIndexPath *indexPath = [NSIndexPathindexPathForRow:[self.playerscount] - 1 inSection:0];
[self.tableViewinsertRowsAtIndexPaths:[NSArrayarrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];--b,table上的数据动态增加。
注意:a和b要同步增加!删除一个cell类似。
23,
viewcontroller加了NSTimer后,dealloc方法不会调用
target:self
selector:nil
userInfo:nil
repeats:YES];
把self的retainCount加一。
24,关于在一个方法中返回对象时,需要是一个autorelease的对象,然后引用时需要retain之,否则会在下一个runloop中释放掉{可以理解为在该方法外都是危险的},造成不知缘故的崩溃。runloop即一个动作执行的方法总和,例如顺序执行的一系列函数,一个按钮点击事件等。均是一个单一的runloop。
25,当在一个viewCtl中声明一个对象时,系统会默认为其初始化,调用方法不会崩溃。但是在其成员函数中声明如NSDictionary *dic;调用dic相关方法时会崩溃掉,原因是没有初始化,不仅不为nil,连野指针都不算,即没有被分配内存空间。