iOS 填充我的 TabBar 图标图像?

iOS filling my TabBar icon image?

我已经在 xcode 中以编程方式将我的选项卡栏的选定图像设置为 fowllows:

[tabItem setSelectedImage:[UIImage imageNamed:@"tabBar_Curriculum_active"]];

这是 'tabBar_Curriculum_active' 图片的样子:

但这是它在 TabBar 中的呈现方式:

就好像iOS决定忽略设计师加在图标上的白线!关于可能发生的事情以及如何解决它的任何想法?

您必须添加两个图像集。到目前为止,您只添加了一个。一组是选择选项卡时应该出现的图标,另一组是未选择时应该出现的图标。

在下图中,我的视图控制器嵌入到导航控制器中,因此我将我的选项卡栏项添加到导航控制器中。

在属性检查器中,您将在选项卡栏项目部分下 -> 有一个选定的图像下拉列表。在 Bar Item Image 部分下 -> 有一个名为 image 的下拉菜单。这是您在未选择状态下选择图像的地方。

只需将 imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal 添加到所选图像

像这样:

 [tabItem selectedImage: [[UIImage imageNamed:[imageName stringByAppendingString:@"tabBar_Curriculum_active"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]]

看来问题是图标的白色部分是不透明的,而不是透明的。您在选项卡栏中获得的图像不是按颜色定义的,而是按 alpha 定义的。你将不得不回到你的设计师那里修复 alpha,或者使用像 Sketch 这样的工具来修复你的图标。