Изображение вместо заголовка в навигационной панели TTLauncherView - PullRequest
0 голосов
/ 26 сентября 2011

Я использую TTLauncherView в своем проекте.Чтобы создать пользовательский фон панели навигации, я вложил в UB-элемент UINavigationBar свой делегат приложения.Это работает нормально, и все панели навигации теперь имеют этот собственный стиль.

@implementation UINavigationBar (CustomNavBarBG)
-(void)drawRect:(CGRect)rect{
    UIImage *image = [UIImage imageNamed:@"navbar_s.png"];
    [image drawInRect:self.bounds];
}
@end

При навигации по представлениям заголовок появляется в середине панели.Но на панели навигации основного экрана лаунчера я хочу, чтобы вместо заголовка было изображение.Возможно ли это?

Как это реализовать?

1 Ответ

6 голосов
/ 27 сентября 2011

вы можете переопределить представление заголовка по умолчанию при загрузке контроллера с пользовательским UIView, например UIButton:

///////////////////////////////////////////////////////////////////////////////////////////////////
- (void)viewDidLoad {
  [super viewDidLoad];

  UIButton *logoView = [[[UIButton alloc] initWithFrame:CGRectMake(0,0,85,40)] autorelease];
  [logoView setBackgroundImage:[UIImage imageNamed:@"navBarLogo.png"] forState:UIControlStateNormal];
  [logoView setUserInteractionEnabled:NO];

  self.navigationItem.titleView = logoView;
}

Я на самом деле не уверен, почему я использовал UIButton здесь :-) возможно, вы можете использовать вместо этого UIImageView, но этот код работает нормально.

...