Unity3D_IOS研究院之Unity3D调用IOS的方法(十)

Unity3D研究院之Unity3D回馈IOS高级界面消息(十)

 雨松MOMO  【Unity3D研究院之游戏开发】  围观10305  47条评论  编辑日期:2012-05-05  字体:  

   上一章介绍了IOS高级界面向Unity3D 发送消息与Unity3D 接收消息的过程,有IOS向Unity发消息(UnitySendMassage),就有Unity调用IOS的方法了(Unity向IOS发送消息,意思是通知在Unity中通知IOS执行函数方法!)本章介绍Unity3D调用IOS的方法。

如下图所示,本章我们的目标是在Unity3D 界面中添加两个GUI按钮,并且在iPhone上点击这两个按钮后分别弹出两个IOS 高级界面的对话框。相信盆友们对GUI应该不会太陌生,在这里我在前调一下GUI就是Unity3D 提供的一套UI系统。图中的两个UI 按钮我就是用GUI做出来的。

Unity3D研究院之Unity3D回馈IOS高级界面消息(十) - 雨松MOMO程序研究院 - 1

 

Project栏目中创建一个c#脚本,命名为Main.cs ,之前没有使用过 C#写脚本,今天我用C#来写这个脚本,哇咔咔~~~ 如下图所示将脚本拖动在摄像机上,脚本中声明两个Texture 类型变量用来保存按钮绘制的图片资源。


Unity3D研究院之Unity3D回馈IOS高级界面消息(十) - 雨松MOMO程序研究院 - 2
Main.cs 代码 

  这里详细说一下SDK这个类,这个类我们看作它是一个管理类,它不赋值在任意对象身上,只接受调用管理(因为SDK类是一个没有继承自MonoBehaviour的类,所以不能以组件的形式存在,这样就不能通过物体和组件来调用,但他有一个好处是:可以在项目的全局使用,非常方便,但常常是用作工具类来实现工具的方法例如Debug.Log()方法可以全局使用!!!) 点击两个按钮后将分别调用下面方法中的_ActivateButton0() 与 _ActivateButton1(),而这两个方法则是去调用xcode 我们自己实现的方法_pressButton0() 与 _pressButton1(), 前提上须下面代码中的注册,这样子导出项目的时候xcode会帮我们 生成注册信息,我们只须要实现这两个方法就可以了。

SDK.cs 代码


 

这样子Unity3D 部分已经完成,将Untiy3D项目导出成Xcode项目,我们用Xcode打开它。添加Unit3D中GUI按钮点击后的响应事件。创建一个类命名为MyView.h 、MyView.m,用它来接收Unity3D 发出的调用消息_PressButton0 与 _PressButton1 这两个方法在Unity3D中已经注册过,所以在这个类中我们须要对它进行Xcode中的实现。(CXK  此处注意因为前面我们已经在Unity中注册过了这些方法,所以在XCode中一定要实现,不然会报错的最终在XCode中编译时会失败!

MyView.m

OK大功告成,连上真机运行我们的项目,我们在iPhone中点击了Unity3D 中GUI这两个按钮后,通过消息的回馈顺利的弹出IOS高级界面 的对话框,哇咔咔~

 

Unity3D研究院之Unity3D回馈IOS高级界面消息(十) - 雨松MOMO程序研究院 - 3

 

最后欢迎各位盆友可以和MOMO一起讨论Unity3D游戏开发,冬天就要来啦大家注意添加衣服,注意身体健康噢。哇咔咔~~~ 附上Unity3D工程的下载地址,Xcode项目我就不上传了,须要的自己导出。不早了,大家晚安,哇咔咔~~

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值