【发布时间】:2011-11-22 14:17:14
【问题描述】:
我正在用我自己的背景图片创建取消按钮:
UIBarButtonItem *leftBarButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(onCancel)];
[leftBarButton setBackgroundImage:[UIImage imageNamed:@"doneButtonActive.png"] forState:UIControlStateSelected barMetrics:UIBarMetricsDefault];
[leftBarButton setBackgroundImage:[UIImage imageNamed:@"doneButtonInactive.png"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.navigationItem setLeftBarButtonItem:leftBarButton];
[leftBarButton release];
我的问题是,按钮太宽了。它几乎比应有的大两倍。我试图更改宽度属性但没有效果。我正在运行 iOS5,它在视网膜和非视网膜显示器上是相同的(我有两个版本的图像:用于视网膜和非视网膜显示器)。
是否可以通过其他方式更改宽度?我知道,我可以使用自定义视图创建按钮,但它不是那么“原生”,我将不得不制作“图形人”来更改图像。
更新 问题解决了。无法编辑系统样式按钮。需要创建自定义背景的UIButton,创建自定义视图的UIBarButtonItem。
【问题讨论】:
标签: ios uiimage uibarbuttonitem uinavigationitem