場景描述:
我的專案配置了國際化檔案,但是英文翻譯還沒有完成,所以,我想在專案中只顯示中文。
解決辦法:
首先,建立nsbundle的category
nsbundle+language.h檔案內容
#import
@inte***ce
nsbundle (language)
+ (void
)setlanguage:(
nsstring
*)language;
@end
nsbundle+language.m檔案內容
#import
"nsbundle+language.h"
#import
static
const
char
_bundle =0;
@inte***ce
bundleex :
nsbundle
@end
@implementation
bundleex
- (nsstring
*)localizedstringforkey:(
nsstring
*)key value:(
nsstring
*)value table:(
nsstring
*)tablename
@end
@implementation
nsbundle (language)
+ (void
)setlanguage:(
nsstring
*)language );
objc_setassociatedobject
([nsbundle
mainbundle
], &
_bundle
, language ? [
nsbundle
bundlewithpath
:[[nsbundle
mainbundle
] pathforresource
:language
oftype
:@"lproj"
]] :
nil,
objc_association_retain_nonatomic);}
@end
在方法- (
bool
nsdictionary
*)launchoptions中新增**
if([[
nsuserdefaults
standarduserdefaults
] objectforkey
:@"mylanguage"
] && ![[[
nsuserdefaults
standarduserdefaults
] objectforkey
:@"mylanguage"
] isequaltostring
:@""
]) else
其中,方法 - (
void
)changelanguageto:(
nsstring
*)language 的定義如下:
- (void
)changelanguageto:(
nsstring
*)language
spring中配置國際化
先寫好幾個.properties的資源檔案放在classpath下,當然可以放在src下面 我寫了兩個 format.properties 內容 testmsg hello world exception.properties run runtimeexception null nullpointe...
IOS中的國際化 一
開啟這個工程你可以當看到如下的乙個介面 然後點開storyboard,你會發現裡面的控制項都非常簡單。為了國際話,我們需要往專案中再新增一門語言。新增語言的方式是,project info localizations點選 來新增相應語言,這裡我們選擇chinese simplified 簡體中文。然...
iOS開發之本地化 國際化語言設定
1.1 增加所需的語言 1.2 建立string檔案。需要特別注意 檔名必須為 infoplist.strings 2.1 設定語言,在1.1中設定過就不再需要再次設定。如果沒有進行1.1中的設定,那就按1.1步驟設定一次 2.2 建立string檔案。需要特別注意 檔名必須為 localizabl...