Пользовательские кнопки панели навигации с системными значками и изображениями - PullRequest
0 голосов
/ 19 февраля 2011

Я пытаюсь выяснить, как добавить пользовательское фоновое изображение к кнопкам NavigationBar, которые используют системные значки или значки изображений.

Я выяснил, как добавить фоновое изображение к кнопкам NavigationBar с текстом, но я изо всех сил пытаюсь выяснить, как сделать это с помощью кнопок со значками.

Для текстовых кнопок я следовал этому уроку: http://idevrecipes.com/2010/12/13/wooduinavigation/

Как создать пользовательские кнопки с иконками?

Спасибо!

1 Ответ

0 голосов
/ 19 февраля 2011

вы можете получить помощь с этим

 @implementation UINavigationBar (UINavigationBarCategory)
  -(void)setBackgroundImage:(UIImage*)image{
if(!image) return;
UIImageView *aTabBarBackground = [[UIImageView alloc]initWithImage:image];
//  aTabBarBackground.frame = CGRectMake(0,0,self.frame.size.width,self.frame.size.height);
aTabBarBackground.frame = CGRectMake(0,0,self.frame.size.width * .6,self.frame.size.height);

// [self addSubview:aTabBarBackground];
// [self sendSubviewToBack:aTabBarBackground];
[self insertSubview: aTabBarBackground atIndex: 0];
[aTabBarBackground release];
   }
   @end

у меня нормально работает

также у нас есть другая идея.

  @implementation UINavigationBar (UINavigationBarCategory)

 - (void)drawRect:(CGRect)rect {
// Drawing code 
UIImage *img = [UIImage imageNamed: @"navbar_background.png"];
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextDrawImage(context, CGRectMake(0, 0, 320, self.frame.size.height), img.CGImage);

} @ Конец

...