tableView cell 设置圆角 响应链

1.  tableView的样式必须为 UITableViewStyleGrouped 样式否则cell设置的圆角无效。

 

2. delegate用weak和assign的区别:

 A:用weak修饰是为了防止循环引用,weak修饰的变量不为其所属的对象持有,并且变量被销毁时,该变量值会自动置为nil

   B:assign是对C基本数据类型的修饰,当然也可以用在对象类型的成员变量上,代表的意义知识单纯的拷贝值,即如果对某assign成员变量B赋值某对象A的指针,则此B只是简单地保存此指针的值,且并不持有对象A,也就意味着如果A被销毁,则B就指向了一个已经被销毁的对象,如果再对其发送消息会引发崩溃。(野指针异常)

 C:weak和strong属性是ARC才引入的,而在MRC情况下,只能使用assign修饰了。weak之所以强大的地方,是当引用的对象被销毁时,它的值也会变为nil,所以推荐使用ARC。

 D:MRC情况下需要手动置空。 self.xxx = nil;

3. 响应链

 1.NSObject -> UIResponder -> (UIApplication, UIView, UIViewController)

  UIView -> (UIControl, UILabel, UIScrollView)

  UIControl -> (UIButton, UItextField, UIPageControl)

  UIScrollView -> (UITableView, UITextView)

 2.如果UIViewController(O)上加UIView(A),UIView(A)上加UIView(B)则

     通过nextResponder输出的响应者链是 B -> A -> O.View -> O -> UIWindow -> UIApplication -> AppDelegate.

   即事件先回溯到UIApplication在通过递归找到第一响应者。

4. UIStatusBar的设置

 A. 全局设置。 如果想让状态栏整体为白色的话。可以在info.plist中设置。即key=Status bar style,Value=Opaque black style。同时要禁用viewController中对状态栏更改的配置,即key=View controller-based status bar appearance, Value = NO。此时的状态栏恒为白色。

 B. 状态栏的颜色在不同的页面有变化时,不能使用全局配置,要在相应的页面进行设置。同时,应更改info.plist的配置key=View controller-based status bar appearance, Value = YES,移除key=Status bar style,Value=Opaque black style。使用

 

1 - (UIStatusBarStyle)preferredStatusBarStyle
2 {
3     // 黑色
4 //    return UIStatusBarStyleDefault;
5     // 白色
6     return UIStatusBarStyleLightContent;
7 }

 

posted @ 2017-08-18 10:50  jisa  阅读(133)  评论(0编辑  收藏  举报