iOS Tips

iOS SDK中那些有趣的属性

2016-04-18  本文已影响94人  小杰杰杰

1、CALayer

@property BOOL shouldRasterize;
通常和
@property CGFloat rasterizationScale; 一起使用
#当shouldRasterize设成true时,layer被渲染成一个bitmap,并缓存起来,等下次使用时不会再重新去渲染了。实现圆角本身就是在做颜色混合(blending),如果每次页面出来时都blending,消耗太大,这时shouldRasterize = yes,下次就只是简单的从渲染引擎的cache里读取那张bitmap,节约系统资源。
 [self.layer setRasterizationScale:[[UIScreen mainScreen] scale]]; 是针对retian屏幕的,防止滑动模糊。一般都放在一起用。
如果在滚动tableView时,每次都执行圆角设置,肯定会阻塞UI,设置这个将会使滑动更加流畅,不过方便的事物总伴随着局限性。虽然apple官方开发文件仅仅很保守的提及了透明度效果无法进行Rasterize(光柵化),然而在真机上的执行却会造成图像破碎跟闪烁的结果。

2、UIScrollView

@property(nonatomic) UIScrollViewKeyboardDismissMode keyboardDismissMode NS_AVAILABLE_IOS(7_0); // default is UIScrollViewKeyboardDismissModeNone
#从iOS7开始支持,设置为UIScrollViewKeyboardDismissModeOnDrag时,在拖动列表时自动隐藏键盘。
@property(nonatomic) BOOL scrollsToTop __TVOS_PROHIBITED; // default is YES.
#用户点击状态栏,ScrollView自动回到顶部。

scrollsToTop 可以参考这篇文章

大家有好的可以推荐啊,持续更新。

上一篇下一篇

猜你喜欢

热点阅读