我正在使用故事板创建iPhone应用程序。 我不知道如何为UINavigationBar设置自定义图像。
请教我如何做到这一点。 嗯,我不是程序员,只是一名设计师。
- (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。在“MainAppDelegeate ”类型的对象上找不到属性“managedObjectContext”*
2。使用未声明的标识符'controller'
答案 0 :(得分:5)
我也很快就要做到这一点,所以这里是:你不能在故事板中做到这一点。代码最好放在您的应用程序委托实现文件(AppDelegate.m)中。 。找到方法“ - (BOOL)application:(UIApplication *)application 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.