UIBarButtonItem 自定义图标

3

我使用以下代码行来创建一个带有自定义图标 import2x.png 的 UIBarButtonItem:

UIBarButtonItem *btnImport = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"import2x.png"] style:UIBarButtonItemStylePlain target:self action:@selector(btnImport)];

图标是一个PNG格式的图片,如下所示:

enter image description here

但是当它在模拟器上运行时,它看起来像一个红色实心正方形:

enter image description here

图标是使用透明背景(alpha=0)创建的。
有什么建议吗?感谢您。

你的图片尺寸是多少? - matsoftware
3个回答

3
提供的链接中的这张图片有不透明的背景。如果您使用的是同一张图片,那么它看起来就像一个实心块。
应该使用带有透明背景的图片,就像这样: 具有透明效果的图标 例如,在Photoshop中,您应该能够看到这样的背景模式: 在Photoshop中修复后的图像

2

试试这个。它正常运作。我也分享了我的输出截图。你必须使用小尺寸的图标。但图标应该是可见的,没有问题。

 UIBarButtonItem *doneBtn = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"Login-pin.png"] landscapeImagePhone:[UIImage imageNamed:@"Login-pin.png"] style:UIBarButtonItemStylePlain target:self action:@selector(PickerCancelClick:)];

这是我的输出结果

这个搜索图片就是我的输出结果。


不要更改您的图像格式。当您下载时,请创建任何图标并将其制作为.png格式。之后,不要更改格式,否则它会显示为纯色。 - Soumya Ranjan

2
self.navigationItem.rightBarButtonItem =  [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"g122.png"] style:UIBarButtonItemStylePlain target:self action:@selector(menuClieckd:)];

这对我很有用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接