- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
在 iOS7 中,我创建了一个 UIBarButtonItem
并初始化了一个颜色为绿色的图像。但是那个 UIBarButtonItem
的图像的最终外观是一个具有相同颜色的图像形状但颜色不同。颜色改为蓝色。
代码如下:
_recordVoiceItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"voiceIcon"] style:UIBarButtonItemStylePlain target:self action:nil];
_textView = [[UITextView alloc] initWithFrame:CGRectMake(40, 4, 220, BOTTOM_BAR_HEIGHT - 2*4)];
_textView.layer.borderWidth = 1.f;
_rightItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"modeIcon"] style:UIBarButtonItemStylePlain target:self action:nil];
_bottomBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, self.view.frame.origin.y + self.view.frame.size.height - BOTTOM_BAR_HEIGHT, self.view.frame.size.width, BOTTOM_BAR_HEIGHT)];
_bottomBar.items = @[_recordVoiceItem,[[UIBarButtonItem alloc] initWithCustomView:_textView],_rightItem];
[self.view addSubview:_bottomBar];
我尝试创建一个 UIToolBar
并通过 Interface Builder 向其中添加一些项目。外观很好。 UIBarButtonItem
图像的颜色是原始图像的颜色。
我怀疑如果我想通过编写代码来设置 UIToolBar
或 UIBarButtonItem
的某些属性,我是否需要添加一些代码。你能告诉我怎么做吗?
最佳答案
虽然这不是必需的,但我的彩色 UIBarButtonItem 自 iOS7 以来已完成:
对于 objective-c :
UIImage* itemImage= [UIImage imageNamed:@"menu.png"]; // Colored Image
itemImage = [itemImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
_itemButton = [[UIBarButtonItem alloc] initWithImage:itemImage style:UIBarButtonItemStyleBordered target:self action:@selector(itemSelected:event:)];
UIImageRenderingModeAlwaysOriginal 是这里的关键。
对于 Swift 3:
// Use the colored image menu.png as a UIBarButtonItem
if var itemImage = UIImage(named: "menu") {
itemImage = itemImage.withRenderingMode(.alwaysOriginal)
let itemButton = UIBarButtonItem(image: itemImage, style: .plain, target: self, action: #selector(self.itemSelected(_:)))
self.navigationItem.rightBarButtonItem = itemButton
}
同样,.withRenderingMode(.alwaysOriginal) 是这里的关键。
关于ios - 如何避免 UIToolbar 的 tintColor 更改 UIButtonItem 按钮颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20607540/
我对 UIToolbar 进行了子类化,并在其中创建了一组 UIButtonItems,所有这些都是按顺序添加的,并且间隔灵活。我现在想在每次点击时切换其中一个 UIButtonItems(就像 iP
我已将蓝色 UIBarButtonItem 添加到应用程序中的 UIToolbar 中,并将工具栏的 TintColor 更改为黑色。然而,按钮也变成了黑色。有办法避免这种情况吗? 感谢您的帮助, 史
在 iOS7 中,我创建了一个 UIBarButtonItem 并初始化了一个颜色为绿色的图像。但是那个 UIBarButtonItem 的图像的最终外观是一个具有相同颜色的图像形状但颜色不同。颜色改
我正在尝试向我的 UIBarButtonItem 添加一个角标(Badge),为此我找到了这个 github: MIBadgeButton-Swift 但是我不知道怎么用。 这是我的代码,它使我的自定
我是一名优秀的程序员,十分优秀!