2011-11-02 26 views
0

我正在嘗試學習如何爲iphone應用程序實現multilinqual。我總是以編程方式創建我的UI。請檢查下面的代碼Ui以編程方式與multilinqual

UIImage *buttonImage2 = [[UIImage imageNamed:@"orangebuttonsmall.png"] stretchableImageWithLeftCapWidth:22 topCapHeight:0]; 
    btnCancel = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [btnCancel setTitle:@"Save" forState:UIControlStateNormal]; 
    [btnCancel setBackgroundImage:buttonImage2 forState:UIControlStateNormal]; 
    btnCancel.frame = CGRectMake(205, 40.0, 60.0, 30.0); 
    btnCancel.titleLabel.font = [UIFont boldSystemFontOfSize:14]; 
    btnCancel.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 
    btnCancel.titleLabel.textColor = [UIColor whiteColor]; 
    btnCancel.titleLabel.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.3]; // [UIColor blackColor]; 
    btnCancel.titleLabel.shadowOffset = CGSizeMake(0, -1); 
    [btnCancel sizeToFit]; 
    btnCancel.bounds = CGRectInset(btnCancel.bounds, -10, 0); 
    [btnCancel addTarget:self action:@selector(cancelAction:) forControlEvents:UIControlEventTouchUpInside]; 
    [self.containerView addSubview:btnCancel]; 

當我搜索本地化,我得到的Xibs的例子,但沒有編程。 現在我想知道如何將上面的代碼更改爲多linqual例如法語。

感謝您的幫助

回答

2
[btnCancel setTitle:NSLocalizedString(@"Save",@"Title for Save Button") forState:UIControlStateNormal]; 

然後使用終端命令

genstrings -o en.lproj *.m 

以產生Localizable.strings文件

然後定製所得Localizable.strings文件爲每種語言和存儲在項目中適當的Lang.lproj子文件夾中。 (French.lproj English.lproj等)

NSLocalizedString函數將拉入特定於語言的值並將其替換爲代碼。

+0

當我運行genstrings命令時,無法連接到輸出目錄en.lproj。這裏有什麼問題 – user198725878

+0

mkdir en.lproj在運行genstrings之前 – gamozzii

相關問題