NGUI的拖拽和放下功能的制作,简易背包系统功能(drag and drop item)
2024-09-08 09:42:57
一我们添加sprite,给sprite添加背景图片和添加box collider,但是drag and drop item在attach中是找不到的只能在add component中查找添加,如下图:
这时生成一个这样的脚本
二,现在只能识别拖的功能,我们该怎么监听放下的功能呢?
1》我们添加一个脚本MayDragDropItem继承UIDragDropItem,将当前这个自动生成的删除,如下图:
using UnityEngine;
using System.Collections; public class MayDragDropItem : UIDragDropItem { }
2》继承重新编译之后,我们看看跟之前那个区别
当继承之后,两者的属性的一样的,这时我们可以删除上面那个了,保留我们自己添加的那个MayDragDropItem
3》现在我们要获取拖拽之后放下到那个游戏物体该怎么写呢?
1》拖拽获取的是碰撞,游戏物体的碰撞我们都需要添加一个box collider,我们添加一个sprite当做存放装备的空格,然后添加一个box collider,然后重写UIDragDropItem的OnDragDropRelease方法,如下代码:
using UnityEngine;
using System.Collections; public class MayDragDropItem : UIDragDropItem { protected override void OnDragDropRelease(GameObject surface)
{
base.OnDragDropRelease(surface); //进行我们的处理代码
print(surface);
}
}
我们运行游戏将物体拖拽到空格,就可以获取到空格这个游戏物体,可以输出surface,就知道
最新文章
- JAVA程序员常用软件整理下载
- 使用node-inspector对Node.js进行调试
- C#读取Excel的三种方式以及比较
- jdk 安装
- python模块结构和布局
- ionic preparing for ios 9
- 156 Useful Run Commands
- json处理三部曲之第二曲:利用Jackson处理json
- Java并发编程:Java线程池
- [转载] Cassandra入门 框架模型 总结
- 二维码开源库ZBar-MDK STM32F429移植
- ZD6转辙机
- WebService客户端(以命令方式创建)
- telnet总结
- SQL-42 删除emp_no重复的记录,只保留最小的id对应的记录
- zlib 2.1.8 编译遇到的问题以及解决方法
- (树)Subtrees -- hdu -- 5524
- Ubuntu14.04 libboost_program_options.so.1.54.0: cannot open shared object file: No such file or directory
- NPOI帮助类(Excel转DataTable、DataTable转Excel)
- No 'Access-Control-Allow-Origin' Ajax跨域访问解决方案