Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(197评价)
价格: 4431.00元
关于UGUI背包物品拖拽
thirdone发起了问答2017-07-26
9
回复
1514
浏览

 

 

老师,我在做黑暗之光背包的时候,用了UGUI里面IBeginDragHandler, IDragHandler, IEndDragHandler三个接口来实现拖拽,现在有两个问题:

1.拖拽结束后拿PointerEventData里的pointerCurrentRaycast是本身,这个我要怎么拿到框这个gameobject呢

2.拖拽到另一个框的时候物品是在框的下面,怎么实现拖拽的时候就在其它框上面呢

所有回复
  • siki 2017-07-28

    这里可以看下老师做的背包系统

    老师没有使用ugui自带的拖拽,而是自己实现了拖拽,然后自己做检测鼠标下面的游戏物体是什么

    拖拽的时候会把拖拽的iamge的raycast target取消勾选了,这样检测的时候不会碰撞检测到当前正在拖拽的image图片

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
  • sdhexu 2017-07-29

    框就是物品的父亲啊。。。很简单。

    • siki 2017-07-29

      回答问题之前先好好看看人家的问题

      (0) 回复
    • siki 2017-07-29

      不要总是打击式回复

      (0) 回复
    • sdhexu 2017-07-31

      回复 @ siki: 晕,没有打击式回复吧。。你看看它的图片截图。那个框不就是它ITEM的父亲么。。

      (0) 回复
    • siki 2017-07-31

      回复 @ sdhexu: 他的目的并不是得到tiem的父亲,而是让item可以在所有ui的前面,拖拽移动

      (0) 回复
    • sdhexu 2017-08-01

      回复 @ siki: 他的第一问就是,如何拿到那个框。。。我回答的也是他的第一问。
      还记得我发的那个UI么?http://www.sikiedu.com/classroom/5/thread/510
      我跟他的一样,用UGUI实现的。当时请教过你很多问题呢。我的拖拽,点到的也是物品,但是想要找框,本事物品就是框的子物体,所以物品的父亲就是框。GetComoponInParent就可以。
      第二问,其实也不难啊,开始拖拽的时候,设置物品为它父亲的最后一个兄弟,停止时,如果可以放在停止的位置,那就设置为当前框的孩子,否则设置为原来框的孩子,在将position置为zero。
      就是这样的啊。。

      (0) 回复
    • siki 2017-08-02

      回复 @ sdhexu: 棒棒滴 只是说 大家都是新手,问题没有简单不简单

      (0) 回复
    还有1条回复,点击查看
    你还没有登录,请先登录注册
  • sdhexu 2017-07-29

    GetComopontInParent<ItemSlot>();

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!