做了3個月的專案,終於把安卓版本弄上線了,接下來就是苦逼的搞蘋果版本。然而一開始就遇到乙個問題,因為我們專案是橫屏的,但是呼叫系統相簿的時候,因為系統相簿是豎屏的,直接就閃退了。
報錯資訊:
一開始還以為要在info.plist裡面把protrait加上,導致的結果是進去的時候取到的螢幕尺寸是640*1136。然後螢幕適配也有問題。果斷放棄。後來看到別人的帖子裡面有提到
supportedinte***ceorientationsforwindow
這個方法,不過人家是在
.mm裡面加的,而我們專案用的是cocos2dx版本,所以我加在了
.mm中。
如下:- (
uiinte***ceorientationmask
uiwindow
*)window
此**表示專案支援全部的方向。
然而我們專案實際在執行時其實一般都是橫屏的,所以在rootviewcontroller.mm中修改
// for ios6, use supportedinte***ceorientations & shouldautorotate instead
- (nsuinteger
) supportedinte***ceorientations
此**表示遊戲內僅支援橫屏
然後在我自己呼叫系統相簿的
imagepickerviewcontroller
.mm檔案中重寫函式 -(
nsuinteger
)supportedinte***ceorientations
return
uiinte***ceorientationmasklandscape;
}inphoto
為bool值,在進入相簿或相機前設定為true,這樣進入的時候會自動切為豎屏。在取消**或拍照或成功選中**時設定為false,這樣相簿或相機退出時,遊戲會自動在切為橫屏。這樣就解決問題啦。其實解決的思路還是挺簡單的,主要是對ios不熟,遇到問題也就只能這樣一步一步嘗試過來
最後記得要支援螢幕旋轉哦。
- (bool
) shouldautorotate
cocos2d x ios 設定橫屏 豎屏(全)
cocos2d x專案 ios rootviewcontroller.mm檔案中。以下方法任選其一即可 本人機子函式二ok 函式一 bool shouldautorotatetointe ceorientation uiinte ceorientation inte ceorientation 函式...
cocos2d x IOS遊戲開發
捕魚達回顧 cocos2d x ios遊戲開發 捕魚達人1 內容介紹 上節回顧 cocos2d x ios遊戲開發 城市跑酷14 重寫觸屏 touch 事件處理機制,響應玩家操作 cclabelbmfont的特色就是以占用更多記憶體為代價加快標籤的更新,這與其他任何ccsprite類相似 在遊戲中使...
cocos2d x IOS遊戲開發
捕魚達回顧 cocos2d x ios遊戲開發 捕魚達人1 內容介紹 上節回顧 cocos2d x ios遊戲開發 城市跑酷3 讀取資源,設定背景層 遊戲的元素應該是多種多樣的,只有乙個背景就略顯單調了,這裡我們來加入一些道具。來看下具體的實現 加入背景 城市燈火 background ccspri...