【问题标题】:Issue with back button background image返回按钮背景图像的问题
【发布时间】:2012-05-10 16:43:55
【问题描述】:

我在 appDelegate 中实现了这段代码,以定制导航栏后退按钮背景图片:

float version = [[[UIDevice currentDevice] systemVersion] floatValue];
    if (version >= 5.0)
    {
        // iPhone 5.0 code here
        UIImage *buttonImage = [[UIImage imageNamed:@"btn_backesp.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(1, 10, 1, 10)];
        [[UIBarButtonItem appearance] setBackButtonBackgroundImage:buttonImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

    }

    return YES;

但我得到了这个错误,似乎两个后退按钮重叠,自定义与默认一个。我试图隐藏左栏按钮项,然后都隐藏。

非常感谢

【问题讨论】:

    标签: objective-c ios5


    【解决方案1】:

    使用下面的代码设置返回按钮图像,效果很好

    UIButton *backBtn     = [UIButton buttonWithType:UIButtonTypeCustom];  
    UIImage *backBtnImage = [UIImage imageNamed:@"btn_backesp.png"]  ;  
    [backBtn setBackgroundImage:backBtnImage forState:UIControlStateNormal];  
    [backBtn addTarget:self action:@selector(goback) forControlEvents:UIControlEventTouchUpInside];  
    backBtn.frame = CGRectMake(0, 0, 54, 30);  
    UIBarButtonItem *cancelButton = [[UIBarButtonItem alloc] initWithCustomView:backBtn] ;  
    self.navigationItem.leftBarButtonItem = cancelButton;
    

    回退方法:-

    - (void)goback
    {
        [self.navigationController popViewControllerAnimated:YES];
    }
    

    【讨论】:

    • 一个问题,你有选择器调用的goback方法吗?非常感谢
    猜你喜欢
    • 2012-12-16
    • 1970-01-01
    • 2015-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多