2012-02-21 13 views
1

私のプロジェクトに画像を追加しました。不思議なことに、ファイルシステム上ではアプリケーションのルートディレクトリにありますが、Xcode内のプロジェクトエクスプローラでは/Images/navbar-bg.pngに入れました。これを一貫させるには?UINavigationControllerに背景画像を設定できません

ところで、私は私のUINavigationControllerに背景イメージとして追加したいです。これはコードですが、私はデフォルトの青の背景からの変更を確認しない:

// navigation 
navigationController = [[UINavigationController alloc] initWithRootViewController:cardListViewController]; 
// ps hue: 37, 53, -5 
navigationController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"navbar-bg" ofType:@"png"]]]; 

self.window.rootViewController = navigationController; 

ノー結果とUIImage imageNamedをも試みました。プログラムでそれをやりたいのですが、ここでxibを使用していません。

おかげ

答えて

1

あなたが実際のフォルダを表していないのXCodeのプロジェクトエクスプローラに表示さこれらの黄色に見えるフォルダアイコン。彼らはgroupsです。もちろん、Imagesサブフォルダからファイルを移動して一貫性を持たせることはできますが、逆の作業をしたいと思います。

プロジェクトにアイテムを追加し、ソースフォルダ名を保持するには、「フォルダ参照」を作成する必要があります。 [ファイルの追加]ダイアログで、[追加されたフォルダのフォルダ参照を作成する]ラジオボタンを選択します。黄色のアイコンの代わりに青のフォルダアイコンが表示されます。そのフォルダ内のすべてのアイテムがプロジェクトに追加され、そのフォルダの内容を変更すると、ビルドされた実行ファイルはその内容と一致します。

...そして、あなたはUINavigationBar:setBackgroundImageを使用し、ナビゲーションバーに画像を追加するには、...のiOS 5では

を2番目の質問を尋ねました。

0

ナビゲーションコントローラの背景色であれば、ナビゲーションコントローラに表示されているコントローラがその上に表示されます。これは決して目に見えないことを意味します。あなたが見ているのはcardlistcontrollerです。代わりにこのコントローラに背景画像を設定する必要があります。

0

お試しください このコードをviewDidloadメソッドに書き込みます。それは

UINavigationBar *navigationBar = self.navigationController.navigationBar; 
UIImage *image = [UIImage imageNamed: @"NavBar-Wood.png"]; 
[navigationBar setBackgroundImage:image forBarMetrics: UIBarMetricsDefault]; 
self.navigationController.navigationBar.tintColor = [UIColor brownColor]; 

ありがとう。

関連する問題