中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Unity3d 失去獲取焦點,暫停

發布時間:2020-05-20 01:02:28 來源:網絡 閱讀:2402 作者:wo愛錢 欄目:編程語言

     目前在用tolua進行項目開發,C#與lua交互的部分消息使用了注冊監聽處理,監聽方法均放到Update方法里面進行處理,問題在于失去焦點后Update方法將不繼續執行,這就導致了監聽方法未能及時調用。

     例如:AB玩家進行紙牌游戲,A接到電話并失去焦點,Update不執行導致消息未能及時通知服務器,此時B未能及時收到A的狀態誤以為A還在打牌狀態。

     此外Android Plugins中的UnityPlayer.UnitySendMessage,經測試在強制暫停時,OnPause、OnStop周期中UnitySendMessage無效。(個人未測)

     故要特殊處理這兩個方法,現改成C#直接調用lua方法,去掉監聽推送這一步。

   C#:
   /// <summary>
    /// 當程序獲得或者是去焦點時
    /// </summary>
    /// <param name="focus"></param>
    public void OnApplicationFocus(bool focus)
    {
        try
        {
            LuaManager.CallFunc_Void("MineMessageCenter.OnApplicationFocus", focus);
        }
        catch (System.Exception)
        {
            
            throw;
        }

        //Debug.logger.Log("焦點:" + focus);
        //if (focus)
        //{
        //    MessageCenter.GetInstance().PostEvent(EventNameDefine.GetFocusEvent);
        //}
        //else
        //{
        //    MessageCenter.GetInstance().PostEvent(EventNameDefine.LostFocusEvent);
        //}
    }
    
       /// <summary>
    /// 當程序暫停
    /// </summary>
    /// <param name="focus"></param>
    public void OnApplicationPause(bool isPause)
    {
        try
        {
            LuaManager.CallFunc_Void("MineMessageCenter.OnApplicationPause", isPause);
        }
        catch (System.Exception)
        {

            throw;
        }
       
        //Debug.logger.Log("暫停:" + isPause);
        //if (isPause)
        //{
        //    MessageCenter.GetInstance().PostEvent(EventNameDefine.GetPauseEvent);
        //}
        //else
        //{
        //    MessageCenter.GetInstance().PostEvent(EventNameDefine.LostPauseEvent);
        //}
    }
Lua:
--當程序獲得或者是去焦點時
function MineMessageCenter.OnApplicationFocus(focus)
print("焦點:"..tostring(focus));
end 

--當程序暫停
function MineMessageCenter.OnApplicationPause(isPause)
--print("暫停:"..tostring(isPause));
end


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

嵩明县| 益阳市| 池州市| 玉山县| 巴塘县| 乐陵市| 巢湖市| 承德市| 神木县| 政和县| 印江| 九寨沟县| 岳池县| 大城县| 鹤庆县| 万年县| 丹棱县| 延吉市| 大邑县| 广西| 巩留县| 翁牛特旗| 保靖县| 布尔津县| 镇坪县| 盐池县| 朝阳县| 乌拉特前旗| 嘉荫县| 会昌县| 正蓝旗| 建昌县| 嵩明县| 灌南县| 玛曲县| 开平市| 河南省| 金平| 稻城县| 收藏| 莒南县|