2012年3月30日 星期五

多國語言處理..又一個地雷

2012/3/30 下午8:24
Ti SDK: 1.8.2

Titanium的多國語言字串中不能放入特殊符號,例如<br />
例如 <string name="poidetail_share_title">分享給朋友<br />我要換行</string>
這樣的字串只會parse出"分享給朋友"字串
嘗試過\/都沒用
所以用自定的換行符號取代
沒想到又碰到第二個雷 XD
var str= L('poidetail_share_title');
str.replace('br', '<br />');
上面的指令是無效的
查了一下,有人提出類似問題
原因似乎是str不會被判斷為字串(Titanium SDK好像連JS的缺點都implement了...)
解決方法是把str toString()後再處理

阿阿阿阿阿阿阿
我討厭這種不指定型別的作法 orz

附帶說明
Titanium的string.format吃的是%s, 進階作法是$1%s, $2%s

沒有留言: