美文网首页
Swift与OC的区别

Swift与OC的区别

作者: 浩瀚海洋里的木头 | 来源:发表于2016-07-14 19:56 被阅读412次
  1. OC
    UIView *redView = [[UIView alloc]initWithFrame:CGRectMake(0, 30, 100, 100)];
    redView.backgroundColor = [UIColor redColor];
    [self.view addSubview:redView];

Swift

        let a = 10; let b = 20
        
        // 定义一个常量,视图
        let v = UIView(frame: CGRect(x: 0, y: 20, width: 100, height: 100))
        
        v.backgroundColor = UIColor.redColor()
// 调用方法统一使用 .
        self.view.addSubview(v)
 2. OC 类方法
[UIColor redColor];
    Swift UIColor.redColor
UIColor.redColor
 3. OC 的枚举 UIButtonTypeContactAdd
    Swift 中 UIButtonType.ContactAdd
    1> 可以直接省略前缀 .ContactAdd,但是 Xcode 的智能提示有的时候不给力
    2> 如果没有智能提示,可以直接 `回车`,`->`,`.`
 4. 监听方法
    OC 使用 @selector(actionName)
    Swift 直接使用字符串,提示:可以先用智能提示敲出方法名,然后增加引号

oc

-(void)test{
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    [button addTarget:self action:@selector(didClick:) forControlEvents:UIControlEventTouchUpInside];
    
}

-(void)didClick:(UIButton*)button{
    
}

swift

        // 创建按钮
        let btn = UIButton(type: UIButtonType.ContactAdd)
        
        v.addSubview(btn)
        
        // 监听方法
        btn.addTarget(self, action: "clickButton", forControlEvents: .TouchUpInside)
        
    }
    
    func clickButton(btn: UIButton) {
        print(__FUNCTION__)
        print(btn)
    }

如果有参数直接增加 ':'

 5. 没有分号 - 在程序语言中,`;` 用于拆分语句,表示一个完整的语句结束
    Swift 中,大多数情况下不需要分号

相关文章

  • OC与swift的区别

    OC与Swift的区别一(文件结构) OC与Swift的区别一(常量、变量、运算符) OC与Swift的区别三(条...

  • Swift语言基础

    //Swift 与 OC 的区别

  • swift5版本学习

    swift与OC区别:swift与OC1、Swift容易阅读,语法和文件结构简易化。2、Swift更易于维护,文件...

  • Swift--001:Swift编译 & SIL分析

    Swift与OC编译区别 swift与oc编译区别Swfit使用前端编译器swiftc,降级编译成IR,再通过后端...

  • Swift基础:一.Swift与OC区别:

    一.Swift与OC区别: 1.swift程序的入口是UIApplicationMain; 2.OC的类是...

  • ios面试

    一、OC与Swift的区别 1.swift是静态语言,有类型推断,OC是动态语言。2.swift面向协议编程,OC...

  • iOS面试

    # 一、OC与Swift的区别 1.swift是静态语言,有类型推断,OC是动态语言。 2.swift面向协议编程...

  • OC与Swift的主要区别

    swift与OC的主要区别就是语法区别,其他大抵相同. 区别1: swift中使用let定义常量,var定义变量....

  • Swift与OC的区别

    Swift与OC的区别 1、基础篇 2、监听方法 OC 使用 @selector(actionName) Sw...

  • 【Swift】oc与Swift混编方法调用

    本文不介绍桥文件搭建和类的导入,只是阐述oc与swift函数方法的小区别 oc中有类方法与对象方法,调用swift...

网友评论

      本文标题:Swift与OC的区别

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