4

我是通过使用故事板创建iPhone应用程序。 我不知道如何为UINavigationBar设置自定义图像。xcode4.2(故事板,导航控制器)如何为UINavigationBar设置自定义图像

请教我如何做到这一点。 嗯,我不是一个程序员,只是一个设计师。

非常感谢你给我你的好代码。

我把代码给我的“MainAppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // Override point for customization after application launch. 
    UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController; 
    SelectClientNavController *controller = (SelectClientNavController *)navigationController.topViewController; 
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"yourBackGroundImage.png"] forBarMetrics:UIBarMetricsDefault]; 
    controller.managedObjectContext = self.managedObjectContext; 
    return YES; 
} 

但我有几个错误像下面!


对于此行:

SelectClientNavController *controller = (SelectClientNavController *)navigationController.topViewController; 

1.预期表达

2.使用未声明的标识符的 'SelectClientNavController'

3.使用未声明的标识符的'controller'


对于此行:

controller.managedObjectContext = self.managedObjectContext; 

1.住宅 'managedObjectContext' 上类型的对象 'MainAppDelegeate' *

2.使用未声明的标识符 '控制器' 的未找到


如何解决上述错误。


回答

5

我需要做到这一点也很快,所以这里是:你不能在故事板中做到这一点。代码最好放在应用程序委托实现文件(AppDelegate.m)中。 。找到“ - (BOOL)应用程序:(UIApplication *)应用程序didFinishLaunchingWithOptions:(NSDictionary *)launchOptions”的方法并将其更改为如下所示。您只会添加一行代码。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // Override point for customization after application launch. 
    UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController; // this line is probably already there for you 
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"yourBackGroundImage.png"] forBarMetrics:UIBarMetricsDefault]; //this adds the image 
    return YES; 
} 

其中 “yourBackGroundImage.png” 是你的形象。确保您已将图像添加到您的项目中。

我相信这只适用于IOS 5.

+0

非常感谢你给我你的漂亮的代码。 但我有几个错误。 – Monk

+0

发布您的错误,我可能会提供帮助。 –

+1

我把上面的错误。如果你能解决它,欣赏!感谢您的建议。 – Monk

相关问题