微信小遊戲排行榜卡頓或無法滑動

2021-09-22 08:07:05 字數 703 閱讀 1392

在我們製作子域過程中,會出現排行榜顯示時,記憶體損耗會很高,官方給出的解釋是:當開放資料域被喚起後,只要wxsubcontextview元件 load 成功,開放資料域貼圖就開始更新到主域並顯示,之後每幀都會更新貼圖。但是開放資料域貼圖的更新有時可能損耗比較高,開發者設計的開放資料域又是靜態介面(比如翻頁式的介面),此時就不需要每幀更新貼圖,可以嘗試通過禁用元件來阻止每幀更新邏輯,並通過手動呼叫 update 函式來在需要的時候更新:

subcontextview.enabled = false;

subcontextview.update();

這樣手動控制是效能最優的方案

事實上我們子域的scrollview元件會出現無法滑動也差不多是這個原因,在我們在主域關閉排行榜的時候,主域的雖然關掉了wxsubcontextview元件,但是傳遞到子域會有延遲,這就導致了子域介面還沒關閉主域的呼叫已經生效,但是這時的cc.wxsubcontexview已經不生效了,不會重新整理,就會導致子域的介面殘留,而我們再次開啟排行榜的時候就出現了排行榜無法划動,

解決方案:

加乙個延時

setupdatewechatsubcanvas: function(boolvalue) 

},200);

},

在關閉或開啟排行榜的時候呼叫該函式,排行榜就可以正常滑動了

微信小遊戲獲取排行榜

儲存每個使用者的分數 獲取好友列表,並獲取好友的分數 渲染排行榜 步驟一 獲取當前使用者託管資料當中對應 key 的資料。該介面只可在開放資料域下使用 wx.setusercloudstorage object 例如 儲存最高分 var score 100 var kvscore wx.setuse...

pixijs微信小遊戲排行榜開放域開發

主域 let opendatacontext wx.getopendatacontext let sharedcanvas opendatacontext.canvas const wx.getsysteminfosync sharedcanvas.width windowwidth pixelra...

教你快速開發乙個微信小遊戲好友排行榜

要做這個好友排行榜.必然要有好友的戰績比分,然後再做排序,最後將資料呈現在ui上 可以分為下面幾個步驟 儲存每個使用者的分數 獲取好友列表,並獲取好友的分數 渲染排行榜 儲存使用者資料,注意限制單條資料容量不得超過1024位元組,單個使用者資料總條數不得超過128條 儲存最高分 var score ...