简体   繁体   中英

UINavigatiobar right barbutton item image not visible

I am creating a custom right bar button item for UINavigation bar. Here is the code I am using,

UIView *container = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 40)];
    UIButton *backPageButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [backPageButton setFrame:CGRectMake(0, 0, 50, 30)];
    [ backPageButton setImage:[UIImage imageNamed:@"left_arrow.png"] forState:UIControlStateNormal];
    backPageButton.imageView.contentMode = UIViewContentModeScaleAspectFill;
    [backPageButton addTarget:self action:@selector(backButtonAction) forControlEvents:UIControlEventTouchUpInside];
    [backPageButton setUserInteractionEnabled:YES];
    [container addSubview:backPageButton];
    UIButton *forwardPageButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [forwardPageButton setFrame:CGRectMake(30, 0, 50, 30)];
    [ forwardPageButton setImage:[UIImage imageNamed:@"right_arrow.png"] forState:UIControlStateNormal];
    [forwardPageButton addTarget:self action:@selector(forwardButtonAction) forControlEvents:UIControlEventTouchUpInside];
    forwardPageButton.imageView.contentMode = UIViewContentModeScaleAspectFill;
    [forwardPageButton setUserInteractionEnabled:YES];
    [container addSubview:forwardPageButton];

    UIBarButtonItem* item = [[UIBarButtonItem alloc] initWithCustomView:container];

// set the nav bar's right button item
self.navigationItem.rightBarButtonItem = item;

For some reason the button images are not visible. I added a background color to each button and can see that the buttons are actually added to navigation bar and also the click events are working fine. But button images are not visible.

How to fix it?

Thanks

  1. Of course you've made a double check that images belong to your target?
  2. To debug your views in runtime you could use small but very useful button in Xcode

http://i.stack.imgur.com/QFdDL.png

more about this: https://developer.apple.com/library/ios/recipes/xcode_help-debugger/using_view_debugger/using_view_debugger.html

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM