美文网首页
iOS 踩坑日记(二)

iOS 踩坑日记(二)

作者: 夜月饮酒 | 来源:发表于2018-06-12 13:00 被阅读0次
3. 类别和扩展的区别

扩展不会像类别一样,有独立的实现文件(.m 文件),它的实现依赖于对应类

在类别中添加属性,只会生成 get 和 set 方法,不会生成实例变量,而扩展中都会生成。

类别和扩展在声明时有区别:

// 类别
@implementation Person (XWKit)

@end
// 扩展
@interface Person ()

@end
4. NSString 的 stringByAppendingPathComponent 会将 "//" 变为 "/"

在使用字符串的拼接方法时,“//” 会被转为 “/”,这是因为第一个“/”被当做了转义字符,因此,这个方法只可用于文件路径(file path)的拼接。如下:

NSString *host = @"http://www.baidu.com";
NSString *full = [host stringByAppendingPathComponent:@"news"];
NSLog(@"%@", full); // 输出:http:/www.baidu.com/news
5. 圆角属性不会触发离屏渲染

单一的设置视图的圆角属性不会触发离屏渲染,当同时满足以下条件时才会触发离屏渲染:

  1. 设置 layer.cornerRadius
  2. 设置 masksToBounds 为 YES
  3. 视图有子视图

UIImageView 是一个特例,它是一个没有子视图的控件,然而它在某些情况下依旧会触发离屏渲染,具体是:

当使用 jpg 格式图片时,会触发离屏渲染;
在 iOS 9 之前使用 png 图片时,会触发离屏渲染,iOS 9 之后不会触发。

相关文章

  • iOS 踩坑日记(二)

    3. 类别和扩展的区别 扩展不会像类别一样,有独立的实现文件(.m 文件),它的实现依赖于对应类 在类别中添加属性...

  • Xcode10和iOS12踩坑

    Xcode10和iOS12踩坑

  • iOS10的适配

    每次出了新系统,必然要踩很多坑,这次来踩一踩iOS10的坑吧。 一、证书问题 直接选择Automatically ...

  • 开始学习一个新的领域--IOS逆向,记录其中遇到的一些五花八门的问题。 《IOS逆向踩坑日记》。 利己利人。 吱。

  • iOS 踩坑日记(一)

    前言 在日常工作中,我常常遇到一些小坑和容易忘记的知识点,在此做一系列的记录,希望也能帮到你,不定期更新! 1. ...

  • iOS项目中误删文件然后还原导致的问题

    本人初学的iOS,由于自己摸索,导出踩坑,特此随笔几下我踩过的坑,老鸟就不用点进来了。 一、加强对这个坑的认识,毕...

  • Cordova踩坑日记

    Cordova踩坑日记 1.配置环境 ​ 配置SDK踩了很多坑,其实只需要下载一个 android studi...

  • iOS13适配

    参考: iOS13 适配踩坑 - 持续更新 iOS 13 适配要点总结 iOS 13 适配要点总结 1、prese...

  • iOS踩坑

    1、文件找不到(移动项目文件info.plist)

  • # [iOS 预估值estimatedHeight实现head

    iOS 预估值estimatedHeight实现headerView和cell自适应高度布局机制踩坑

网友评论

      本文标题:iOS 踩坑日记(二)

      本文链接:https://www.haomeiwen.com/subject/gwopsftx.html