IOS开发的基础知识

  在用NavigationController去管理view的push和pop时,必要基于差其余view设置是不是出示NavigationBar和ToolBar,一开首在错误的地点设置了,导致突发性该展现NavigationBar和ToolBar时不出示的景观,后来意识在view威尔Appear上设置万无一失。别笑我土鳖,没好好去驾驭它整个流程,一向没发现。

6.UITableView游标式渲染

3.内存泄漏

5.UINavigationController头尾显示隐藏

  @property (nonatomic, retain) NSString *name

  如无搜索必要,可以将一个数量对象直接体系化后存到sqlite,取出时直接反种类化为目的使用。连串化必要数据类完毕NSCoding协议,完结encodeWithCoder和initWithCoder五个办法就行,若有多个数据对象,可以写个基类已毕那四个主意,并在这些中利用反射枚举自己兼备变量去encode和decode,一劳永逸,具体已毕网上找找就有了。

  tableView的体制大约是:先定好总行数,某一行滚入视图范围时,回调一个函数去取view出来体现。这一行滚出视图再滚入时仍会一而再回调这一函数取view。有诸如此类的机制就是说无论是你table里的多少有稍许,都得以全方位放入table中不用分页,因为不用四回性把装有数据都取出来,只在急需出示的时候依照游标去取对应的数量就行了。

1.为什么对一个变量release后还要设为nil

  - (void) viewWillAppear:(BOOL)animated{

  UIWebView不是依据可视范围控制每一遍的渲染范围,而是依照本人控件的frame大小决定。

7.UIWebView渲染限量

  对一个变量release后,这么些变量指向的内存释放了,但那一个变量本人没变,仍指向原来的内存地址。若这几个变量在自由后被访问,恐怕被另行release,就会招致应用崩溃。设为nil后那一个变量指向0×00,可以有限帮助程序之后访问不到原来的内存地址,对nil实行release也没其余难题。

  name = @”bang” //没有retain,随时会被放走

http://www.cnblogs.com/roucheng/

2.利用类成员时,前边加不加self.有啥不同

 

  //.m

  NSString *str = self.name //等于NSString *str = [self name]sqlite,;

  用leaks工具监测出来的败露查找方法是跟踪其代码提醒中出现的变量,日常这些变量是在晋升的调用堆栈以外的地点泄漏的。若实在查不到,最后办法是重写这一个变量的retain和release方法,debug,从调用堆栈看是哪个人retain了它而并未release。

  self.name = @”bang” //等于[self setName:@”bang”];
那时在set方法里retain了那么些字符串

  曾品尝webview嵌在tableview里,为了让webview跟tableview一起滚动,把webview的大小设为webview里的始末大小,让webview不出滚动条,从而能随着tableview的滚动条一起滚。这样做的结果是每便webview都四遍性渲染整个页面,内存占用多属性很差,而且在加大减少这些webview时,渲染放大的全套页面更难于,出现不只怕经受的品质。化解办法是让webview定住中度为一整屏iphone的高度,限制了webview每便的渲染范围为可视范围,品质大好。带来的难点是力不从心随tableview滚动,但足以以任何措施优化体验。目前看到新版的ZAKELX570也是那样做的。

  [self.navigationController setToolbarHidden:NO];

  }

  可以通过xcode的编译工具Product-Analyze检查函数块范围内或者的泄漏点(外带会指示有些可能部分错误)。

  要小心的是,用CFXXCreate(例如CFArrayCreate)生成的变量要用CFRelease释放。

  //.h

  [super viewWillAppear:animated];

  只怕那是APP组件很当然的主意不用表明,但在web上页面上的数据和因素都以要一回性载入内存的,做久了web,一初阶没悟出它那样的兑现机制,导致大家走了好多弯路。

4.数目存储

  例:

  不加self.调用的是成员本人,加self.后实际调用了其成员的get
set方法。

  [self.navigationController setNavigationBarHidden:NO];

网站地图xml地图