cocos creator 3.8.2 編譯 android 項目

編譯項目執行 sync gralde 出現下面錯誤

Failed to open zip file.

Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)

Re-download dependencies and sync project (requires network)
30379-4eauhaal9m.png

需要找出出問題的 gradle, 切換到項目底下 gradle-wrapper.properties
78589-yc2xusdullm.png

點擊查看下載的 gradle 版本
76967-fsmrn91okdi.png

切換到下載的用戶路徑
84347-hugzfnc2h1.png

然後把目錄給刪除掉, 在切換回 android studio 再次執行 Sync Project with Gradle 可以了
90346-vl7dxz13fe8.png

61070-tx6x4zk3a3j.png

62 次阅读 阅读全文

今天遇到一個奇怪的問題, 將素材用 texture pack 導入到 unity, 要使用 Sprite editor 設定 border, 發現左下角這個素材一直點不到, 不管怎麼點綠色的選取都會選到最上方的素材, 而且這時候會發現有兩個綠色選取框, 正常的情況應該是像右側圖一樣.

84275-af0y56k7lx.png

89856-gp6byp8kc5.png

測試換圖發現就是某幾個素材有毛病, 一開始以為是 alpha 間格太小, 調整了 texture packer 設定還是沒用, 最後想說自己修改 sprite 設定看能不能解決問題, 結果發現了奇怪的地方

Sprite Editor 修改的配置最終是在 Atlas_CardPK.png.meta 裡面的, 而 texture packer 導出的是 Atlas_CardPK.tpsheet, 修改這個沒有任何效果

而在 Atlas_CardPK.png.meta 發現了出問題的地方, 如下圖, SpriteID: 00000000000000000800000000000000, InternalID: 0
23889-f0owxct046.png

這時候把 SpriteID 自行修改附值, 修改沒有重複的隨意值如下
10418-fhckta5d7y8.png

切換回 unity 開啟 Sprite Editor 隨便修改一個值點 Apply , 再切回去 Atlas_CardPK.png.meta 發現 unity 已經自動修改 SpriteID, 之後 texture packer 再重新生成倒出資源都不會有問題
37710-ozqhu1bsu1e.png

這個問題應該是 unity temp 緩存的 uuid 有問題才會造成 texture packer 匯出資源無法獲取正常 SpriteID, 只要生成正常了就好了

72 次阅读 阅读全文

cocos 在onload setposition 无效

在 pveUI 加載 mainstageUI prefab 生成出來後掛載在 scrollview content 底下, 且mainstageUI 上面已經掛好了腳本 mainstageUIPanel, 奇怪的是 mainstageUIPanel 設置更新 pot position 卻無效。

一開始以為是 scrollview 還是其他因素造成, 後來測試許久發現是 mainstageUIPanel 內的都無效, 最終多方查看發現可能有一點奇妙的就是 mainstageUIPanel 初始化是寫在 onLoad 內的, 把位置刷新改到 start 再執行發現可以了。

可能是因為 prefab 生成掛載執行流程是 onload -> start, 在這過程中 widget 會再次重製, 所以才會無效, 也可以看看論壇說的

ref. https://forum.cocos.org/t/topic/137332

60 次阅读 阅读全文

修改項目時發現這個"普通領取"文字在runtime沒顯示出來, 這個 RichText 的定位方式比較獨特, 不清楚介面作者為甚麼是這樣的思路的...
75076-xhbt0g2qm0p.png

37507-mrndvh741.png

main是整個簽到介面, 而btnNormalReceive則是最下面的"普通領取"按鈕
53041-ryv7y514gp.png

main的weidge預設是沒開啟的, 並且 align 為 bottom
54156-i1bbunzjv9.png

btnNormalReceive的 align 也是 bottom

Runtime下總是看不到, 後來切換了 resolution 總算發現了,順著這個因素去查
67335-44ett4fgsd2.png

普通領取文字其實是剛好跑到了白色

調整了下 mian 的 widget 設定改成 center, 切換過來發現 middle 竟然不是0, 那也就難怪代碼邏輯上去開啟 widget.enable = true 之後為什麼位置偏移蓋到了 "普通領取" 按鈕文字了
87242-q783n71yqg.png

再次修改 btnNormalReceive 放到 main 底下, 並且將 main、btnNormalReceive 兩個都設定為 center , 總算解決問題了
74833-21q4vvru1oz.png

54 次阅读 阅读全文

晚上在改cocos項目時發生一個奇怪的問題, 要把改完的內容 git push 上去, 項目點 "Git提交->Master" 會直接卡死, 查了下發現是 i18n修改內容只要在裡面就會卡死, 本來以為是目錄還是設定有甚麼問題, 最後把目錄給移除出去再重新修改內容竟然又可以了....記錄下來吧。
40159-p5hzqb462ls.png

71 次阅读 阅读全文