xibビュー内でテキストをローカライズしたいと思います。現在、私は各言語にいくつかのxibを持っています。各言語のxibを作成せずにテキストをxibビューでローカライズするにはどうすればよいですか?
言語ごとに別々のxibを作成せずに、xibファイル内のテキストをローカライズすることはできますか?
xibビュー内でテキストをローカライズしたいと思います。現在、私は各言語にいくつかのxibを持っています。各言語のxibを作成せずにテキストをxibビューでローカライズするにはどうすればよいですか?
言語ごとに別々のxibを作成せずに、xibファイル内のテキストをローカライズすることはできますか?
.stringファイルについて知りたいと思うような音です。
Here is a tutorial on the subject。
And here is a related question詳細はこちらをご覧ください。
Androidの背景から来て、私は同じ質問をしていました。 Appleの場合でも、各言語ごとに別々のxibファイルを作成するrecommends幸いにも、このプロセスは、ビルドスクリプトでibtool
を使用して自動化することができます。それはthis articleにうまく記述されています。
ローカライズはXibではなくテキストに適用されます。だから、 xibファイルを検討する必要はありません。ローカリゼーションも複雑すぎることはありません。このリンクをチェックする あなたを助けるでしょう。
http://www.raywenderlich.com/2876/how-to-localize-an-iphone-app-tutorial
この問題は私にナットを運転していました。
xibのローカリゼーションを自分で簡単にしようとしている間に、私はこの記事といくつかの記事を見ました。私はラベル/ボタン用のIBOutlesをこの質問に含めるという私の方法を掲載しました。私にとってはうまくいって、すべての変更をLocalization.stringsファイルに限定しています。
匿名投票の理由が判明している理由はありますか? – WiseGuy
私が直接良いオプションではありませんxibsをローカライズと思います。私はhttps://github.com/steipete/Aspectsを使用してUILabelのawakeFromNibメソッドをフックし、そこでテキストをローカライズします。例:
#define Localized(_v_) NSLocalizedString(_v_, nil)
NSError *err = nil;
[UILabel aspect_hookSelector:@selector(awakeFromNib)
withOptions:AspectPositionAfter
usingBlock:^(id<AspectInfo> aspectInfo) {
UILabel *label = aspectInfo.instance;
NSString *lStr = Localized(label.text);
if (lStr) {
label.text = lStr;
}
} error:&err];
あなたはUIButtonや他のUIViewを扱うようにしている場合、あなただけのUIViewのawakeFromNibをフックして、ビューの各種類をローカライズすることができます。
.stringsファイルの翻訳をxibから参照することはできますか、言語ごとに1つのxibの代わりに1つのxibだけが必要な場合は、ラベルにラベル(etc)値を設定する必要がありますか? – jrturton
偉大な質問@jrturton、と私はそれの答えの特定ではありません。 .stringsをxib自体から参照するには?私はそれがKVC経由で可能かもしれないと思うが、私は試みたことがない。 –
このチュートリアルを見る:http://www.raywenderlich.com/2876/how-to-localize-an-iphone-app-tutorial –