2014-05-08 4 views
4
 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
     {  
      [[UINavigationBar appearance] setTintColor:[UIColor colorWithRed:230.0f/255.0f green:200.0f/255.0f blue:160.0f/255.0f alpha:1.0f]]; 
      >>EXC_BAD_ACCESS 
      [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navBarBackground"] forBarMetrics:UIBarMetricsDefault]; 
      // Override point for customization after application launch. 
      return YES; 
     } 

в didFinishLaunchingWithOptions Я делаю простой код, который отлично работает в ИУ 7.1, но не работает в 7.0UINavigationBar внешний вид аварии в прошивкой 7.0

Error: CGImageProviderCreate: invalid image provider size: 128 x 0.

Error: CGImageCreate: invalid image size: 128 x 0. Unable to create image from csi bitmap data

navBarBackground, расположенный в Media.xcassets. Im с использованием Xcode 5.1

Любая идея, как исправить это?

ответ

10

Я решил проблему. На этом изображении в Media.xcassets вы должны установить нарезку как минимум на 1px enter image description here

0

Если вы хотите тонировать UINavigationBar, вы должны использовать setBarTintColor:

[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:230.0f/255.0f green:200.0f/255.0f blue:160.0f/255.0f alpha:1.0f]]; 

Edit:

Ваше фоновое изображение для UINavigationBar должен иметь 320x64 пикселей и должны быть PNG.

Смежные вопросы