【问题标题】:unity, problem with eventsystem and multiple buttons统一,事件系统和多个按钮的问题
【发布时间】:2022-07-22 00:20:44
【问题描述】:

你好,我对统一很陌生,我有一个问题,我的画布上有 4 个方形按钮,游戏中有 4 个角色,每个按钮应该通过拖动按钮本身来移动一个角色,更新 X 和 Y 变量和用这个变量计算方向。 问题是我触摸的任何按钮都会更新所有变量的一对变量,而不是我触摸的唯一一个。在网上看,我发现它可能与事件系统有关,但我不知道如何正确设置它。

【问题讨论】:

    标签: unity3d user-interface button


    【解决方案1】:

    如果您想要一个按钮更新其各自玩家的 X 和 Y 坐标,那么您需要有一对 Button 和一个 Player。为此,创建一个 Button 作为键,Player 作为其值的字典。

    public Dictionary<Button, Player> pairs = new Dictionary<Button, Player>();
    

    现在将ButtonListeners 添加到这些按钮并将其各自的播放器作为参数传递。

    foreach (var pair in pairs) {
        pair.Key.onClick.AddListener(() => MoveThisPlayer(pair.Value));
    }
    
    void MoveThisPlayer(Player player) {
        // move this player
    }
    

    【讨论】:

      猜你喜欢
      • 2011-02-28
      • 1970-01-01
      • 1970-01-01
      • 2021-07-12
      • 2013-04-29
      • 1970-01-01
      • 2014-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多