标示符
__func__
的内容是当前编译代码的函数名为什么UI控件要用weak?因为当ui控件添加到父控件中时,父控件的subviews数组会有强指针指向这个对象,就可以保证这个对象不会被销毁,再搞一个属性引用这个对象,用弱引用就可以了。这样在UI控件对象从其父控件移除时指向他的弱指针也会释放。如果用强指针,那么指向控件的内存空间不会被释放,那么就会内存泄漏。
了解 UIControl
[self.view viewwithtag:]
;图片放在文件根目录下和放在Assets.xcassets下的区别?Assets无法通过
imagewithcontentsofFile
来加载图片,因为拿不到路径。放在Assets中的图片最后会压缩在Assets.car中。imageNamed:内存无法清理,用地址加载的图片,内存 可以清理。
通过toolbar添加毛玻璃效果。
32位颜色值 18位 12位
[uibutton buttonwithtype:]
懒加载
layoutSubviews方法,用于布局子控件(可以拿到frame)。需要调用
[super layoutSubviews]
创建对象用
init
和initwithframe
方法都会调用initwithframe
方法,所以只需要实现后者即可。xib加载方式
[nsbundle mainbundle]loadnibnamed
如果view从xib中加载,就会调用
initwithcoder:
方法(当解析一个文件的时候会调用)如果子控件是从xib中创建,是处于未唤醒状态,如果要操作其中的view,例如添加子控件,需要调用方法
awakeFromNib
。该方法会在xib被加载完成后调用重写button使得它的图片和名字位置改变,可以重写
titleRectForContentRect
或者可以在layoutSubviews
中修改子控件的位置。分类写一个image的图片拉伸保护。
利用kvc修改对象的私有变量的值。
kvo [对象 addobserver]添加监听
代理声明为weak是为了解决循环引用
-
scrollview做内容缩放,1.实现代理
viewForZoomingInScrollView
2.设置缩放比例maximumZoomScale和minimumZoomScale
*[self.scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)]
让所有对象执行这个方法
设置tableview估算高度,能够使得首次进入时,调用tableview的高度代理方法次数减少。且会先调用创建方法,再调用高度方法。
iOS8之前手动设置cell高度时,需要手动设置文字的最大宽度,但是这个值只需要设置一次,所以可以在cell的
-awakeFromNib
方法中设置这个参数。建立一个宏,只在debug的情况下输出打印。
在pch文件中加上#ifdef OBJC 这样在导入.c文件时,才不会因为在.c中引用oc的库而报错。
+(void)load
当类被加载到内存当中就会调用此方法。可用于创建单例,即在一运行程序时候就创建。从iOS7开始,系统提供了两种管理状态栏的方式:
1.通过UIViewController管理每一个页面的状态栏。
-preferredStatusBarStyle
-prefersStatusBarHidden
2.通过UIApplication管理,即统一管理。UIApplication单例,可以管理网络状态,app旁的红色小图标,状态栏,打开一个网页等。
-
-loadView
方法的作用。好处是什么?想想xib直接创建一个tableview是怎么实现的?
transform属性了解
UITouch用于记录触摸的位置,时间,阶段。
NSSet和NSArray类似,前者无序。
如果父控件不能接触触摸事件。那么子控件也不能
-setNeedsDisplay
重绘系统自动帮你调用drawRect,并且创建上下文CADisplayLink 是的setNeedsDisplay和drawRect在同一时间调用。
*对比UIView和CALayer,前者可以响应事件,因为继承UIRespond读文章《自增ID配置》
小码哥朝花夕拾
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
- @(iOS 项目实战)[项目实战] 作者: Liwx 邮箱: 1032282633@qq.com 目录 10.项目...