This commit is contained in:
CortexCore 2024-06-12 17:38:05 +08:00
parent dab0eec438
commit b3996f7bf3
2 changed files with 15 additions and 15 deletions

View File

@ -262,7 +262,7 @@ namespace BITKit.Net
} }
catch (Exception e) catch (Exception e)
{ {
BIT4Log.LogException(e); //BIT4Log.LogException(e);
returnWriter.Write(false); returnWriter.Write(false);
returnWriter.Write(e.Message); returnWriter.Write(e.Message);
} }

View File

@ -93,9 +93,8 @@ namespace BITKit.UX
}); });
} }
} }
public class UXAlert : MonoBehaviour public class UXAlert : MonoBehaviourSingleton<UXAlert>
{ {
internal static UXAlert Singleton;
[SerializeField] private UIDocument document; [SerializeField] private UIDocument document;
[UXBindPath(UXConstant.TitleLabel)] [UXBindPath(UXConstant.TitleLabel)]
@ -103,14 +102,13 @@ namespace BITKit.UX
[UXBindPath(UXConstant.ContextLabel)] [UXBindPath(UXConstant.ContextLabel)]
private TextElement _contextLabel; private TextElement _contextLabel;
[UXBindPath(UXConstant.MainButton)] [UXBindPath(UXConstant.MainButton)]
private Button _comfirmButton; private Button _confirmButton;
[UXBindPath(UXConstant.SecButton)] [UXBindPath(UXConstant.SecButton)]
private Button _cancelButton; private Button _cancelButton;
private void Start() private void Start()
{ {
DI.Register<IUXDialogue,UnityDialogue>(); DI.Register<IUXDialogue,UnityDialogue>();
Singleton = this;
UXUtils.Inject(this); UXUtils.Inject(this);
Close(); Close();
@ -122,32 +120,34 @@ namespace BITKit.UX
_titleLabel.text = message.title; _titleLabel.text = message.title;
_contextLabel.text = message.message; _contextLabel.text = message.message;
_comfirmButton.clicked += Close; _confirmButton.clickable = null;
_cancelButton.clickable = null;
_confirmButton.clicked += Close;
_cancelButton.clicked += Close; _cancelButton.clicked += Close;
_cancelButton.SetActive(true);
if (message.OnConfirm is not null) if (message.OnConfirm is not null)
{ {
_comfirmButton.clicked += message.OnConfirm; _confirmButton.SetActive(true);
_cancelButton.SetActive(false);
_confirmButton.clicked += message.OnConfirm;
}else if (message.OnChoice is not null) }else if (message.OnChoice is not null)
{ {
_comfirmButton.clicked += () => message.OnChoice.Invoke(true); _confirmButton.SetActive(true);
_cancelButton.SetActive(true);
_confirmButton.clicked += () => message.OnChoice.Invoke(true);
_cancelButton.clicked += () => message.OnChoice.Invoke(false); _cancelButton.clicked += () => message.OnChoice.Invoke(false);
} }
else else
{ {
_confirmButton.SetActive(true);
_cancelButton.SetActive(false); _cancelButton.SetActive(false);
} }
BITAppForUnity.AllowCursor.AddElement(this); BITAppForUnity.AllowCursor.AddElement(this);
} }
private void Close() private void Close()
{ {
_comfirmButton.clickable = null;
_cancelButton.clickable = null;
document.rootVisualElement.SetActive(false); document.rootVisualElement.SetActive(false);
BITAppForUnity.AllowCursor.RemoveElement(this); BITAppForUnity.AllowCursor.RemoveElement(this);
} }