iosuinavigationitemtitleview

My UINavigationitem's TitleView getting expanded in ios 6


In my app I have applied an image on uinavigation item. It is running fine in iOS 5 but getting expanded on iOS 6. I have no left or right bar button item in navigation bar. I searched too much but couldn't find answer.

Here is my code:

UIImageView *navigationImage=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 98, 34)];
navigationImage.image=[UIImage imageNamed:@"topNav-logo.png"];
self.navigationItem.titleView=navigationImage;

and image shows like this:

screenshot

It should be displayed like lower image but it is displayed like expanded in iOS 6 it works good in iOS 5.

The result is:

result screenshot


Solution

  • I have the same issue starting at iOS 6, and found the craziest workaround:

    Create one more UIImageView of the same dimension. Then add the navigationImage as a subview to that. In my case this will prevent the auto resizing.

    UIImageView *workaroundImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 98, 34)];
    [workaroundImageView addSubview:navigationImage];
    self.navigationItem.titleView=workaroundImageView;
    

    If anyone finds a proper solution or an explanation please post it.