【问题标题】:UIBarButtonItem greyed outUIBarButtonItem 灰显
【发布时间】:2012-01-19 08:04:34
【问题描述】:

我正在向 UINavigationBar 添加两个 UIBarButtonItem。其中第一个是系统项目 - 搜索按钮 - 效果很好。第二个是自定义图像(一个小的白色 Glyphish 图标),但是当我添加它时,图像变为灰色。该按钮是完全可点击的,只是灰色。有谁知道为什么会发生这种情况?

我确实相信 alpha 级别是正确的。如果我将相同的图标放在 UIToolbar(而不是 UINavigationBar)上的 UIBarButtonItem 中,它就是这样显示的:

【问题讨论】:

  • 不明白。也许你可以添加一张图片。 (虽然从未接触过 iPhone 开发者)。
  • 感谢奥洛夫的建议。我添加了一张照片。
  • 如果它是自定义图标,您可以再次检查 alpha 值吗?
  • @Darwin,我认为 alpha 值还可以,因为它可以在其他用途​​中正确显示。我在 UIToolbar 上添加了它的图片。
  • 您是在代码中还是在 IB 中创建按钮?

标签: iphone uibarbuttonitem


【解决方案1】:

然后,尝试清洁目标。

Shift + cmd + K

【讨论】:

  • 感谢达尔文,做到了!我正在写那个:)
  • 是的。 :) 不久前与UIImageView 有同样的问题。请参阅:有时是详细信息:“我之前一直使用灰色图标。”
【解决方案2】:

看起来它处于突出显示状态?如果您以编程方式创建此按钮,您可能需要检查其是否为 UIControlState == UIControlStateHighlighted

【讨论】:

    【解决方案3】:

    您正在使用工具栏类型的图标图像。工具栏和 TabBar 上的 Glyphish 图标仅使用 alpha 层。但是,如果您要构建按钮,则必须使用标准图像。在任何图像编辑器中打开图像,并使用您想要的按钮颜色和您想要的 Alpha 层的透明值。在某种程度上,它与标签栏中由 alpha 层组成的图像相反。

    【讨论】:

    • 它现在似乎可以正常工作,无需任何修改。我只需要使用白色图标而不是灰色,但不知何故 Xcode 保留了旧图标。不过感谢您的想法!
    【解决方案4】:

    我之前一直使用灰色图标。当我意识到这是错误的颜色时,我给文件添加了“-grey”后缀,并引入了一个白色图标,它取代了灰色图标的名称。但不知何故,Xcode 仍在检索旧图标,尽管它的名称在项目中已更改(因此在 Finder 中)。可能缓存了?这对我来说是个谜!

    感谢大家的意见。

    【讨论】:

      【解决方案5】:

      试试这个强制重新加载按钮。

      - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
          if([sender isKindOfClass:UIBarButtonItem.class]) {
              UIBarButtonItem *button = sender;
              self.navigationItem.rightBarButtonItem = nil;
              self.navigationItem.rightBarButtonItem = button;
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-06-19
        • 1970-01-01
        • 2019-01-23
        • 1970-01-01
        • 1970-01-01
        • 2012-06-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多