※ 引述《tkdmaf (皮皮快跑)》之銘言:
: 我是照「iOS7程式設計實戰 171個快速上手的開發技巧」這本書設定的。
: 總之,照書上的範例去做,確實是將我的storyboard變成了base、en、ch-tw
: 問題是在於~~~~~~~~~~~~~~~
: 其實我是用程式碼來做其他storyboard的進入。
: 結果發生很詭異的現像。
: 舉例來說就是。
: 假設我把zh-tw的其中一個storyboard的某個文字改成紅色好了。
: (原本是藍色)
: 但是我執行(在實體ipad執行)之後,他還是藍色。
: 後來我試用模擬器iphone和ipad都模擬卻是紅色的字。
: 再回頭用實體ipad跑卻還是藍色的字。
: 最後~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
: 我索性把storyboard改名字............
: 沒想到竟然ipad就這樣變成紅色字。
: 我本來想是不是有其他storyboard暫存但那隻檔案我全目錄搜尋就只有一個。
: 究竟是什麼情況導致這種現象?
: 註:後來我把檔名還有程式指定的storyboard改回去……他又變成藍色。
: 其實簡單就是說當我改成多語系之後,在不改檔名的情況下不管我對storyboard做
: 任何的變更他執行時就完全沒有變化。
: 但是只要改檔名他卻可以跑。但奇怪的事不改檔名用模擬器去跑時卻是正常的走向。
: 是我在什麼設定上弄錯了什麼事情嗎?還望各位大大指導。
<續上篇的後來狀況…>
現在是說,假設我選了一個storyboard,叫做secboard好了。
在show the file inspector的localization
有三個語言選項
base
english
chinese (traditional)
當chinese是string時,他會跑到我沒有設定成localization的storyboard
但那個storyboard我卻無法找到他。
但是當chinese是storyboard時,卻變成編譯後就會在語系是中文時參照他。
重點是~~~~~~
假設他原本是叫secondstoryboard,而我的viewcontroller在轉換storyboard時
使用的名稱也是secondstoryboard時,他竟然會跑去之前的secondstoryboard
而不是現在的名稱secboard(我當然理解不可能呼叫到secboard,但原本的
secondstoryboard在被我改名成secboard的狀況下應該會找不到才對。
所以我一直不明白這狀況到底是怎麼回事。
然後我故意把base和english拿掉,留下chinese時就會只有一個storyboard。
而且他是編譯後確實會顯示成我要的狀況。
但是一但我又點回base和english後,就又整個讀取混亂了。
重點是我完全不明白應該是被我改掉的舊版為什麼編譯後出現的還是他。
然後我去找整個storyboard檔案時卻也只有一隻檔案。
更妙的是~~~~~~
編譯時在模擬器出來的情形是正常的
(更正!正常的情況是昨天,但是看看再跑發現也異常了)
到了ipad mini卻整個跑掉。
完全搞不懂這到底是什麼怪異的情況。