• ! Unknown property attribute "class"


    当时是在用Xcode 7进行编译ASDK的代码发现报错了

    当时就蒙圈了,@property(class)--这是啥呀,太久没看过object-c了,但是不至于@property是没有class属性的,没办法只能靠度娘解决问题了,于是就找到了一个大神的文章,本文也是只是做个学习记录

    http://www.cocoachina.com/ios/20161202/18257.html

    1、Xcode8才支持Objective-C 的类属性了,与OC 中的类属性对应的是Swift的类型属性。

    注意:尽管这是Xcode 8 中 LLVM 编译器的新特性,但是它对于iOS 10之前的版本依然适用

    2、声明形式如下:

    @property (nonatomic, class, copy) ASDisplayNodeNonFatalErrorBlock nonFatalErrorBlock

    类属性永远不会被自动合成(就是说如果不自己代码实现 setter和getter的话,是不行的);

    3、在.m文件内需要声明成Static类型

    static ASDisplayNodeNonFatalErrorBlock _nonFatalErrorBlock = nil;

    4、setter和getter的方法实现(因为_nonFatalErrorBlock是static类型,所以 setter和getter方法是类方法)

     1 + (void)setNonFatalErrorBlock:(ASDisplayNodeNonFatalErrorBlock)nonFatalErrorBlock
     2 {
     3   if (_nonFatalErrorBlock != nonFatalErrorBlock) {
     4     _nonFatalErrorBlock = [nonFatalErrorBlock copy];
     5   }
     6 }
     7 
     8 + (ASDisplayNodeNonFatalErrorBlock)nonFatalErrorBlock
     9 {
    10   return _nonFatalErrorBlock;
    11 }

    5、使用的方式是按照static类型方式:类名.nonFatalErrorBlock,

    以上大概就是这个知识点的基本使用了,有不妥之处欢迎指正,详细的可以通过上面链接学习。

    写作会让你往回看。既然你不能掌控人生,只是你可以掌控有自己叙述的版本。
  • 相关阅读:
    mogodb学习
    rman list incarnation
    Java创建对象的四种方式
    JAVA 8 函数式接口--Consumer
    Linux中VIM的使用
    JRE 和 JDK 的区别
    tengine-2.3.1 增加ngx_http_upstream_check_module 模块
    k8s的coredns 增加外部dns解析记录
    Dockerfile的CMD总结
    redis数据转移随笔
  • 原文地址:https://www.cnblogs.com/zhouhui231/p/7277525.html
Copyright © 2020-2023  润新知