尽量选择更加轻量级的控件,相比较于uiwindow来说uiview更加轻量级,相比较于uiview来说calayer更加轻量级,所以一般在加载一个界面的时候尽量使用懒加载(什么时候使用什么时候加载,而不是一开始就全部加载出来),而且尽量在耗费大量cpu运行的地方使用异步开启后台线程执行并缓存,等到使用的时候再在缓存中取出使用。
关于渲染, 相比cpu和gpu的渲染,CPU是通过软件进行渲染,很多时候CPU的渲染会增加性能的消耗,gpu属于只有固定的函数的固定多边形渲染,cpu将渲染处理计算出来传递给gpu,gpu进行渲染,在uiview进行渲染的时候尽量选择更加高效底层的才能增加他的效率,比如 我们通过创建一个 cgcontextref context= cgbitmapcontextcreate (.....)来创建一个位图,然后通过 cgimagedraw(context。。。。。cgimage); (在此附上uiimage和cgiamgeref的相互转换,cgimageref image=img。cgimage uiimage * image=[uiimage imagewithcgimage ]) 将image 绘制到context上 ,然后将该位图加载到layer上,通过layer。contents=context。然后加载到view的layer上。(尽量在后台线程中执行)