3

私はバイリンガルのシンプルなIOSアプリに取り組んでいます:PDFファイルはここで説明されている方法でUIWebViewにロードされます:

ローカルPDFファイルをWebViewにロードする

XCodeでは、「ローカリゼーション」機能を使用して、第2言語(フランス語)を追加しました。MainStoryboardには、英語用とフランス語用の2つの「サブ」ストーリーボードが含まれています。

MainStoryboard(英語)で、UIWebviewを挿入しました->そのビューをMainViewController.hに接続します->英語のPDFファイルをMainViewController.mに挿入するためのコードを追加します。

NSString *path = [[NSBundle mainBundle] pathForResource:@"EnglishBook" ofType:@"pdf" inDirectory:@"PDFBooks"];
NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[_UIWebViewBook loadRequest:request];
[_UIWebViewBook setScalesPageToFit:YES];

英語版はうまく動作します。

しかし...フランス語のPDFファイルはどこに置くのですか?

言語固有のPDFファイルをターゲットにする方法はありますか?

「pathForResource:@」は「言語」に敏感でしょうか?

ご協力いただきありがとうございます !

4

1 に答える 1

0
NSString *path = [[NSBundle mainBundle] pathForResource:@"Book" ofType:@"pdf" inDirectory:@"PDFBooks"];
NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[_UIWebViewBook loadRequest:request];
[_UIWebViewBook setScalesPageToFit:YES];

1冊の本をリクエストしてから、プロジェクトフォルダにサブフォルダen.lprojとfr.lprojを作成し、それぞれ英語版のフランス語版を追加して、両方をXcodeプロジェクトにドラッグします。

これらは両方ともen.lprojとfr.lprojの下に表示され、デバイスのローカリゼーションに応じて、正しいものがロードされます。

明確にするために。Finderで、次のディレクトリ構造を設定します。 ここに画像の説明を入力してください ここに画像の説明を入力してください

次に、MyBook.txt(この場合はpdf)をXcodeにドラッグすると、次のようになります。 ここに画像の説明を入力してください

次に、MyBook.txtを呼び出すと、デバイスの国際言語設定([設定]-[一般]-[国際]-[言語])に応じて、デバイスは取得するバージョンを自動的に選択します。

また、ドキュメントのUIDocumentInteractionControllerを調べることもできます。

于 2012-09-22T15:37:46.537 に答える