2011-07-05 15 views
1

ありがとうございました。スタートアップ時に提供されたコアデータdoc

Core Data docベースのapp/sqlite形式です。

私は私が行うことができます知っているいくつかのこと:

が初めてアプリを実行するには、「無題」ドキュメントを表示します。私は、データを追加し、保存して、起動時に以前に保存した文書を追加コードで実行することができます。これは問題ありません。それはすべて働いている。

私が行う必要があるのは、データを含む以前に作成されたsqliteファイルを提供し、アプリケーションが「無題」ドキュメントの表示をバイパスして起動時にすぐに実行させることです。

私のアプリケーションバンドルにあるsqliteファイルを〜/ Library/Application Support/Some App/dbase.sqliteに送信するように設定されています。起動時にこのデフォルトのドキュメントが起動時に実行されるように設定するにはどうすればよいですか?

私は、提供されたデータベースを選択すること、または必要に応じて異なる場所に保存されたカスタムドキュメントを作成するオプションを選択することで、ユーザーにとって使いやすいものにしています。

もう一度おねがいします。

ポール。

答えて

0

NSApplication代理人で‑applicationShouldOpenUntitledFile:代理人メソッドを実装し、NOを返す必要があります。これにより、起動時に新しい無題のドキュメントが作成されるのを防ぐことができます。

‑applicationDidFinishLaunching:デリゲートメソッドを実装する必要があります。デリゲートメソッドは、アプリケーションの読み込みが完了したら呼び出されます。実装するには‑makeDocumentWithContentsOfURL:ofType:error:メソッドNSDocumentControllerを呼び出して、表示するファイルを開きます。

あなたはで文書コントローラのインスタンスを取得することができます:あなたが使用して、ドキュメントのURLを取得することができます

[NSDocumentController sharedDocumentController] 

[[NSBundle mainBundle] pathForResource:@"YourDocName" ofType:@"YourDocFileExtension"]; 
+0

をねえ、ロブは再び-thanks。私は以下を除いてすべてを整理しました:-makeDocumentWithContentsOfURL:ofType:error:...それに取り組んでいます。 – Paul

関連する問題