Ios 如何使用自定义视图创建UIBarButtoneItem,但要模仿UIBarButtoneItem initwithimage行为

Ios 如何使用自定义视图创建UIBarButtoneItem,但要模仿UIBarButtoneItem initwithimage行为,ios,uinavigationbar,uibarbuttonitem,uitoolbar,Ios,Uinavigationbar,Uibarbuttonitem,Uitoolbar,我需要将徽章和红点添加到UIBarButtonItem,因为很难获取框架(它不是视图),所以我希望使用自定义视图的UIBarButtonItem。目前UIBarButtonim是init,方法是initwithimage,我喜欢苹果文档中描述的默认行为: 条形图上显示的图像源自此图像。如果此图像太大而无法在条形图上显示,则会将其缩放以适合。通常,工具栏和导航栏图像的大小为20 x 20点。源图像中的alpha值用于创建图像。忽略不透明值 因此,我的问题是如何使用自定义视图实现上述逻辑。也就是说,

我需要将徽章和红点添加到UIBarButtonItem,因为很难获取框架(它不是视图),所以我希望使用自定义视图的UIBarButtonItem。目前UIBarButtonim是init,方法是initwithimage,我喜欢苹果文档中描述的默认行为:

条形图上显示的图像源自此图像。如果此图像太大而无法在条形图上显示,则会将其缩放以适合。通常,工具栏和导航栏图像的大小为20 x 20点。源图像中的alpha值用于创建图像。忽略不透明值

因此,我的问题是如何使用自定义视图实现上述逻辑。也就是说,如何解析图像,将alpha值替换为tint color值

或者转到另一条路线,是否有安全可靠的方法获取UIBarButtonim相对于UIToolbar或UINavigationBar的位置/框架

提前感谢。

dUse
-(id)initWithCustomView:(UIView*)customView
并使用包含图像和徽章的视图作为customView

关于色调,您应该看一下这篇文章: