【问题标题】:Call a touch function using NGUI/Unity3D?使用 NGUI/Unity3D 调用触摸功能?
【发布时间】:2013-11-19 16:15:55
【问题描述】:

我有一个游戏使用 GUITextures 作为按钮,但它不能在不同的分辨率上运行。所以有人告诉我 NGUI 会很容易地做到这一点。但我已经为 GUITexture 按钮编写了代码。

我如何为使用相同纹理的 NGUI 按钮做到这一点?我到处搜索,找不到任何答案....NGUI论坛帮助不大。

【问题讨论】:

  • 我是否只是将按钮声明为 GameObject 而不是 GUITexture 并保持原样???
  • 您是否在主脚本中创建了全局游戏对象? public GameObject yourGameObjName; 之类的东西?
  • 是的,我试过了。但是触摸代码不起作用。
  • @Dasu,NGUI 纹理。

标签: android touch unity3d ngui


【解决方案1】:

你的游戏对象应该有任何类型的碰撞器组件然后在脚本中执行以下操作:

//Use UIEventListener to bind your gameobject with your desired method 

public GameObject YOUR_BUTTON_GAMEOBJECT;

UIEventListener.Get(YOUR_BUTTON_GAMEOBJECT).onClick += YOUR_METHOD_NAME;


//METHOD SIGNATURES 
void YOUR_METHOD_NAME(GameObject gameObject){
     //On Click Stuff
}

希望对你有帮助

【讨论】:

  • 今晚我会试试。我得到了一些糟糕的响应时间。此外,我在按钮上使用了一个中间动画,它的缩放比例是 -.4 的 1000% 倍。
  • UIEventListener 去哪儿了?
  • 您可以将该 UIEventListener 语句放在 Start() 方法中。因此,每当您的游戏对象实例化时,它就会开始监听 onclick 事件。
  • 非常感谢。它完美地工作。除了 ngui 的补间之外,我还喜欢它。是否可以使用 itween 代替 ngui 的 tween??
猜你喜欢
  • 1970-01-01
  • 2020-11-01
  • 2013-05-04
  • 2016-02-28
  • 1970-01-01
  • 2020-04-13
  • 1970-01-01
  • 1970-01-01
  • 2011-09-15
相关资源
最近更新 更多