[問題] 同語言(lproj)需要不同翻譯,怎解?

看板MacDev作者 (京都念慈庵,賈詡念費翔)時間10年前 (2014/10/28 10:46), 10年前編輯推噓3(307)
留言10則, 5人參與, 最新討論串1/1
現況如下: Project底下設定為兩個Target TargetA(A客戶) 使用en.lproj, es.lproj 以及 it.lproj TargetB(B客戶) 使用en.lprog, fr.lproj 其中每個lproj裡面含有20個左右的xib以及一個Localizable.strings. 而且所有lproj都是共用的(可以不共用嗎?) 每次有需要翻譯就從en.lproj去使用ibtool去抓xib strings和塞回去 (這事情只有第一次開新語言時才作) 現在客戶B 也需要西班牙文支援, 雖然我們告知已有翻譯(就是把es.lproj enable即可) 但是他們想改字, 這樣一來會沒辦法sync(因為大家都用一樣的lproj) 請問有沒有好方法可解? 前提是希望project不要branch,一樣的code要maintain未來會很可怕... 目前我找到比較可行的方式是把所有strings拉出來保留 (es內XIB本來的翻譯以及新翻譯的strings,放兩個地方之類的) 在build phases加入Run script功能, 在build之前才去把自己想要的strings塞進去es.lproj, 這樣可以確保兩客戶每次都會的得到自己想要翻譯的XIB結果 請問是否有更好的作法? Thanks. -- 明月幾時有?把青天,不知天上宮闕,今夕是何年? 我欲乘歸去,惟恐瓊樓玉宇,高處不勝; 起舞弄清影,何似在人間。朱閣,低綺戶無眠。不應有,何事長向別時圓? ,此事古難全。 但願人長久,千里共嬋娟。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.169.196.191 ※ 文章網址: http://www.ptt.cc/bbs/MacDev/M.1414464364.A.FAF.html ※ 編輯: drag (118.169.196.191), 10/28/2014 10:46:58

10/28 11:12, , 1F
NSLocalizedString 有變種 NSLocalizedStringFromTable
10/28 11:12, 1F

10/28 11:13, , 2F
可以指定要去哪個 .strings 檔 lookup
10/28 11:13, 2F

10/28 11:18, , 3F
其實NSLocalizedStringFromTable才不是變種,
10/28 11:18, 3F

10/28 11:19, , 4F
NSLocalizedString也是會呼叫NSLocalizedStringFromTable
10/28 11:19, 4F

10/28 11:20, , 5F
NSLocalizedStringFromTable才是原本的方法
10/28 11:20, 5F

10/28 11:59, , 6F
ㄟ這我也有查到,不過UI上面大部分的strings都是在XIB裡面
10/28 11:59, 6F

10/28 11:59, , 7F
感謝兩位的解答! :)
10/28 11:59, 7F

10/28 12:08, , 8F
XIB的話,可以在view load的時候去動態指定那些文字
10/28 12:08, 8F

10/28 13:51, , 9F
多XIB維護時很煩
10/28 13:51, 9F

10/28 22:11, , 10F
Xcode6做多國語言的方式有些改變,可能會比較好吧
10/28 22:11, 10F
文章代碼(AID): #1KJmDi-l (MacDev)
文章代碼(AID): #1KJmDi-l (MacDev)