unity3d游戏开发之回馈IOS高级界面消息.doc_第1页
unity3d游戏开发之回馈IOS高级界面消息.doc_第2页
unity3d游戏开发之回馈IOS高级界面消息.doc_第3页
unity3d游戏开发之回馈IOS高级界面消息.doc_第4页
unity3d游戏开发之回馈IOS高级界面消息.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

上一章介绍了IOS高级界面向unity3D 发送消息与unity3d接收消息的过程,有去的消息当然要有回的消息这样的过程才算完美,本章MOMO向大家介绍Unity3D消息的回馈。 出自狗刨学习网 如下图所示,本章我们的目标是在Unity3D 界面中添加两个GUI按钮,并且在iPhone上点击这两个按钮后分别弹出两个IOS 高级界面的对话框。相信盆友们对GUI应该不会太陌生,在这里我在前调一下GUI就是Unity3D 提供的一套UI系统。图中的两个UI 按钮我就是用GUI做出来的。 Project栏目中创建一个c#脚本,命名为Main.cs ,之前没有使用过 C写脚本,今天我用C#来写这个脚本,哇咔咔 如下图所示将脚本拖动在摄像机上,脚本中声明两个Texture 类型变量用来保存按钮绘制的图片资源。 Main.cs 代码1. using UnityEngine;2. using System.Collections;3. 4. public class Main : MonoBehaviour 5. 6. /声明两个Texture变量,图片资源在外面连线赋值7. public Texture Button0;8. public Texture Button1;9. 10. / Use this for initialization11. void Start () 12. 13. 14. 15. / Update is called once per frame16. void Update () 17. 18. 19. 20. /这个方法用于绘制21. void OnGUI() 22. /绘制两个按钮23. if(GUI.Button(new Rect(0,44,120,120),Button0)24. 25. /返回值为ture说明这个按钮被点击26. SDK.ActivateButton0();27. 28. 29. /绘制两个按钮30. if(GUI.Button(new Rect(200,44,120,120),Button1)31. 32. /返回值为ture说明这个按钮被点击33. SDK.ActivateButton1();34. 35. 36. 复制代码 这里详细说一下SDK这个类,这个类我们看作它是一个管理类,它不赋值在任意对象身上,只接受调用管理,点击两个按钮后将分别调用下面方法中的_ActivateButton0() 与 _ActivateButton1(),而这两个方法则是去调用xcode 我们自己实现的方法_pressButton0() 与 _pressButton1(), 前提上须下面代码中的注册,这样子导出项目的时候xcode会帮我们 生成注册信息,我们只须要实现这两个方法就可以了。 SDK.cs 代码 1. using UnityEngine;2. using System.Runtime.InteropServices;3. 4. public class SDK5. 6. 7. /导出按钮以后将在xcode项目中生成这个按钮的注册,8. /这样就可以在xocde代码中实现这个按钮点击后的事件。9. DllImport(_Internal)10. private static extern void _PressButton0 ();11. 12. public static void ActivateButton0 ()13. 14. 15. if (Application.platform != RuntimePlatform.OSXEditor)16. 17. /点击按钮后调用xcode中的 _PressButton0 ()方法,18. /方法中的内容须要我们自己来添加19. _PressButton0 ();20. 21. 22. 23. /和上面一样24. DllImport(_Internal)25. private static extern void _PressButton1 ();26. 27. public static void ActivateButton1 ()28. 29. if (Application.platform != RuntimePlatform.OSXEditor)30. 31. _PressButton1 ();32. 33. 34. 35. 复制代码 这样子Unity3D 部分已经完成,将Untiy3D项目导出成Xcode项目,我们用Xcode打开它。添加Unit3D中GUI按钮点击后的响应事件。创建一个类命名为MyView.h 、MyView.m,用它来接收Unity3D 回馈回来的消息,_PressButton0 与 _PressButton1 这两个方法在Unity3D中已经注册过,所以在这个类中我们须要对它进行Xcode中的实现。 MyView.m1. #import MyView.h2. 3. implementation MyView4. 5. /接收Unity3D 传递过来的信息6. 7. void _PressButton0()8. 9. UIAlertView *alert = UIAlertView alloc init;10. alert setTitle:雨松MOMO程序世界;11. alert setMessage:点击了第一个按钮;12. alert addButtonWithTitle:确定;13. alertshow;14. alert release;15. 16. 17. void _PressButton1()18. 19. 20. UIAlertView *alert = UIAlertView alloc init;21. alert setTitle:雨松MOMO程序世界;22. alert setMessage:点击了第二个按钮;23. alert addButtonWithTitle:确定;24. alertshow;25. alert release;26. 27. end复制代码 OK大功告成,连上真机运行我们的项目,我们在iPhone中点击了Unity3D 中GUI这两个按钮后,通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论