iOS开发——实用篇&Swift与Object-C混编之函数的调用

swift里混编oc

在桥接头文件里#import oc的.h文件,整个swift工程都能使用该oc文件,在.h里暴露的方法都能被该工程使用

//oc文件

TestOC.h

 1 #import
 2
 3
 4
 5 @interface TestOC : NSObject
 6
 7
 8
 9 - (void)sayHello;
10
11 - (void)sayWhat:(NSString *)name andAge:(NSString *)age;
12
13 + (void)sayHelloTwo;
14
15
16
17 @end

TestOC.m

 1 #import "TestOC.h"
 2
 3
 4
 5 @implementation TestOC
 6
 7 - (void)sayHello
 8
 9 {
10
11     NSLog(@"hello to you");
12
13 }
14
15
16
17 - (void)sayWhat:(NSString *)name andAge:(NSString *)age
18
19 {
20
21     NSLog(@"%@,%@",name,age);
22
23 }
24
25
26
27 + (void)sayHelloTwo
28
29 {
30
31     NSLog(@"i want to make friend with you");
32
33
34
35 }
36
37
38
39 @end

桥接头文件

#import "TestOC.h"

swift文件

调用oc文件的方法

1 let he = TestOC()
2
3         he.sayHello()
4
5
6
7         he.sayWhat("achao",andAge:"22")
8
9 TestOC.sayHelloTwo()

可以很清晰的看见在swift里调用oc的多参函数时,函数第一部分成为swift函数的名称出现在括号之前,然后函数的第一个参数没有名字,函数剩下的部分座位swift函数对应的参数名称,就是label

调用类方法直接是类名使用点语法调用,调用多参类函数,以此类推

时间: 2024-10-25 02:16:45

iOS开发——实用篇&Swift与Object-C混编之函数的调用的相关文章

iOS开发——实用篇&Swift与Object-C混编之框架

swift与OC混编之框架的创建和调用 首先创建一个project取个名字叫“MyMixed”,选择iOS-framework&library-cocoa touch framework 然后在里面创建一个SwiftView.swift文件,一个objc的OCView文件和MyOCView文件三个文件都继承UIView 首先在SwiftView里调用OCView 1 import UIKit 2 3 4 5 class SwiftView: UIView { 6 7 8 9 init(frame

iOS开发——实用篇Swift篇&项目开发常用实用技术

项目开发常用实用技术 实现拨打电话 要实现打电话功能,最简单最直接的方式便是:直接跳到拨号界面 (注意:这个需要真机调试,模拟器无效果) 1 //自动打开拨号页面并自动拨打电话 2 UIApplication.sharedApplication().openURL(NSURL(string :"tel://123456")!) 邮件发送功能的实现 2015-07-17 10:38发布:yuhang浏览:21 使用MessageUI.framework框架除了可以发送短信,还能发送Ema

iOS开发——实用篇Swift篇&保存图片到相册

保存图片到相册 最近在深入的学习关于swift相关技术,虽然海做不出什么好的东西,但是感觉收获不少,相信总有一样能用到,所以就总结了一下,希望大家喜欢! 1.OC中的写法 在OC中,我们需要保存图片到相册需要调用这个方法:  1 void UIImageWriteToSavedPhotosAlbum(UIImage *image, id completionTarget, SEL completionSelector, void *contextInfo);  想来大家也都看过这个方法的头文件,

iOS开发——实用篇Swift篇&状态栏操作

状态栏操作 在Swift开发过程中,针对状态栏操作的过程有很多. 1.在ViewController中操作当前ViewController的状态栏 [objc] view plaincopy /** 隐藏状态栏 */ override func prefersStatusBarHidden() -> Bool { return true; } /** 设置状态栏风格 */ override func preferredStatusBarStyle() -> UIStatusBarStyle {

iOS开发——实用篇Swift篇&QQ登入界面实现

我们知道在App Store中几乎所有软件都设计到账户的登入,而我们最常见的就是QQ,微信,在没有踏入程序员这条不归路之前,看到一个个的界面都感觉好高大上的样子. 在学习的过程中,自己就照着手机上面APP自己比较好奇的界面实现了一下,今天分享一下关于QQ登入界面,完全纯代码,实用StoryBoar太麻烦,个人比较喜欢用代码实现,而几乎所有登入界面几乎都是一样的,只是图标不同,或者还会有其他的拓展功能,不过这里都会了其他的纳豆不是事儿. 废话不多说,直接上代码 import UIKit class

iOS开发——实用篇&KVO与KVC详解

KVO与KVC详解 由于ObjC主要基于Smalltalk进行设计,因此它有很多类似于Ruby.Python的动态特性,例如动态类型.动态加载.动态绑定等.今天我们着重介绍ObjC中的键值编码(KVC).键值监听(KVO)特性: 键值编码KVC 键值监听KVO 键值编码KVC 我们知道在C#中可以通过反射读写一个对象的属性,有时候这种方式特别方便,因为你可以利用字符串的方式去动态控制一个对象.其实由于ObjC的语言特性,你根部不必进行任何操作就可以进行属性的动态读写,这种方式就是Key Valu

iOS开发——实用篇&提高iOS开发效率的方法和工具

提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时在使用AppCode等其他的IDE,在这里我主要介绍Xcode中提升开发效率的方法. 1.善用快捷键 快捷键是开发中必不可少的,当你善于使用快捷键的时候,十指在键盘上飞舞,那画面太美,我不敢想象. 常用快捷键操作 2.常用代码片段 开发中有一些常用的代码,可以放到代码片段中,然后下次你就可以使用快捷

ios开发——实用技术篇Swift&Swift调用C、C++、Object

Swift调用C.C++.Object 1.Swift调用C语言a,首先在项目中添加 CFile 文件命名为CHello,同时产生桥梁文件. b,创建之后的项目结构 b,在CHello.h文件中编写接口方法,在CHello.c编写实现方法,最后在SwiftCallC-Bridging-Header.h文件中引入CHello.h CHello.h文件 #ifndef __SwiftCallC__CHello__ #define __SwiftCallC__CHello__ #include <st

ios开发——实用技术篇Swift篇&amp;地址薄、短信、邮件

1 //返回按钮事件 2 @IBAction func backButtonClick() 3 { 4 self.navigationController?.popViewControllerAnimated(true) 5 } 6 7 //新增联系人 8 @IBAction func addPeople () 9 { 10 //取得电话薄句柄 11 var error:Unmanaged<CFError>? 12 var addressBook: ABAddressBookRef? = AB