一、前言
最近发布Unity
的Windows
平台的exe
版本,需要监听窗口关闭事件,做一些逻辑,比如第一次点关闭的时候弹出提示,禁止exe
被关闭,第二次才关闭。
二、具体实现
1、Unity5.x版本
using UnityEngine;
public class Main : MonoBehavIoUr
{
void OnApplicationQuit()
{
++m_quitCnt;
if(m_quitCnt < 2)
{
Application.CancelQuit();
}
}
private int m_quitCnt = 0;
}
2、Unity2017及以上版本
using UnityEngine;
public class Main : MonoBehavIoUr
{
void Awake()
{
Application.wantsToQuit += () =>
{
++m_quitCnt;
return m_quitCnt >= 2;
};
}
private int m_quitCnt = 0;
}