在我的应用程序的主视图中,我UIBarButtonItem
使用自定义图像(使用创建)实例化 3 个(2 个实际按钮和 1 个灵活间隔)[UIImage imageNamed:]
,然后将它们设置为UIToolBar
. 这是代码:
-(void)viewDidLoad{
[super viewDidLoad];
UIToolbar *menuBar = [UIToolbar new];
menuBar.barStyle = UIBarStyleDefault;
CGRect viewBounds = [UIScreen mainScreen].bounds;
//menuBar is rotated to be viewed vertically along the right side of the device in portrait orientation, the app does not support device rotation
menuBar.transform = CGAffineTransformRotate(menuBar.transform, M_PI * 0.5f);
[menuBar setFrame:CGRectMake(viewBounds.size.width - menuBarHeight, 5, menuBarHeight, viewBounds.size.height)];
[self.view addSubview:menuBar];
[menuBar release];
UIBarButtonItem
*peekButton = [[UIBarButtonItem alloc]
initWithImage:[UIImage imageNamed:@"peekIcon.png"]
style:UIBarButtonItemStyleDone
target:self
action:@selector(peek:)],
*pauseButton = [[UIBarButtonItem alloc]
initWithImage:[UIImage imageNamed:@"pauseIcon.png"]
style:UIBarButtonItemStyleDone
target:self
action:@selector(pauseGame:)],
*flexSpace = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
target:nil
action:nil];
menuBar.items = @[flexSpace, pauseButton, peekButton];
[flexSpace release];
[pauseButton release];
[peekButton release];
}
在运行 iOS 5.1 的 iPod touch 上运行时,工具栏和按钮按预期显示,如下所示:
但是在 iPad(iOS 4.3)上运行时,纹理看起来像这样:
我似乎无法辨别原因,但是,我相信它可能是操作系统或设备特定的错误,因为我一直遇到类似的模糊图形问题,其中 UI 元素的绘制完全无视底层对象的数据。不幸的是,我找不到任何相关文档(Apple 或其他明智的)来阐明这个问题。
非常感谢任何输入,谢谢。