Your SlideShare is downloading. ×
0
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Cocoa勉強会#57-Baseによるローカライズまとめ
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Cocoa勉強会#57-Baseによるローカライズまとめ

427

Published on

Cocoa勉強会#57 …

Cocoa勉強会#57
2013/1/26
Baseによるローカライズまとめ
新居雅行

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
427
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
1
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Baseによるローカライズ まとめ Cocoa Study #57 2013/1/26 Masayuki Nii nii@msyk.net 1
  • 2. Agenda ✴ Baseによるローカライズとは ✴ 問題点と解決策 2
  • 3. 過去のローカライズ 言語ごとにリソースを用意 利点 • 言語ととにユーザインタフェースなどを定義できる 欠点 • 1つのファイルで行った変更を別のファイルにも行わないと同じ動 作をしない 解決策 • • nibtool/ibtoolコマンドで、文字列要素を抜き出しローカライズ 英語リソース+日本語文字列定義より、日本語のリソースを作成 3
  • 4. Baseを利用したローカライズ Baseファイル+言語ごとのstringsファイル • • • NIB、Storyboardは、Baseとしてのみ存在 Baseの中の文字列を言語ごとに置き換えるstringsファイルを用意 すると、実行時に合成される ビルドしたアプリケーションにも、Base.lproj+English.lprojのい ずれもが存在する すなわち • • デザインをBaseファイルに対して行う 文字列定義をstringsファイルに対して行う しかし… • いくつか問題点がある 4
  • 5. 5
  • 6. 問題点1 - iOS 5は非対応 iOS 6以降のみ • iOS 5では、ストーリーボードがないと言われる 6
  • 7. 問題点2 - Baseが作られないことがある プロジェクトの状態によってはBaseは作られない • • • Single View Applicationなら作られるが Emptyなら作られない Emptyにストーリーボードを加えてもやっぱり作られない 次の問題点と併せてDemo 7
  • 8. 問題3 - 作業手順がいまいち分からん Localizationに言語一覧が見えている場合 • • 特に何も考えなくてもいいだろう Single View Applicationのテンプレートだとそうなる Empty Applicationから作ったプロジェクト • • 言語を追加してから、Baseを作る それぞれのファイルでMake Localizedボタンをクリック 8
  • 9. 問題4 - 変更点がstringsに反映されない Baseにオブジェクトを追加してもstringsはそのまま • stringsにないオブジェクトはそのまま表示される 解決策はある • • 一度、言語のStoryboard/NIBを合成して、その後にstringsに分離 する方法 Object IDを参照して、自分でstringsファイルにエントリーを作成 する方法 9
  • 10. まとめ Baseの方が合理的だが、iOS 5で使えないのが難点 操作方法がいまいち不安定だが、結果を見ながら臨機応 変に作業する Appleのドキュメント • • Internationalize Your App https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/ InternationalizeYourApp/InternationalizeYourApp/InternationalizeYourApp.html 10

×