12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- using UnityEngine;
- using UnityEngine.UI;
- using UnityEngine.Events;
- using System.Collections;
- public static class ExtensionButton
- {
- public static void SetButtonEvent(this Button button, UnityAction onClick)
- {
- button.onClick = new Button.ButtonClickedEvent();
- button.onClick.AddListener(onClick);
- }
- public static void AddButtonEvent(this Button button, UnityAction onClick)
- {
- button.onClick.AddListener(onClick);
- }
- public static void PushButtonEvent(this Button button, UnityAction onClick)
- {
- Button.ButtonClickedEvent click = button.onClick;
- button.onClick = new Button.ButtonClickedEvent();
- button.onClick.AddListener(onClick);
- button.onClick.AddListener(click.Invoke);
- }
- public static void AddButtonEventOnetime(this Button button, UnityAction onClick)
- {
- onClick += () =>
- {
- button.onClick.RemoveListener(onClick);
- };
- button.onClick.AddListener(onClick);
- }
- public static void PushButtonEventOnetime(this Button button, UnityAction onClick)
- {
- onClick += () =>
- {
- button.onClick.RemoveListener(onClick);
- };
- Button.ButtonClickedEvent click = button.onClick;
- button.onClick = new Button.ButtonClickedEvent();
- button.onClick.AddListener(onClick);
- button.onClick.AddListener(click.Invoke);
- }
- }
|