它只是不可能添加一个动作扩展图标

Posted

技术标签:

【中文标题】它只是不可能添加一个动作扩展图标【英文标题】:Its just impossible to add an action extension icon 【发布时间】:2016-08-25 22:54:46 【问题描述】:

我已经尝试了两个星期来获得一个用于显示操作扩展的图标,但绝对没有任何效果。

我已经看过诸如 ios 8 Action Extension icon sizes 和 Why isn't my iOS8 Application Action Extension App Icon showing up? 之类的过去问题,但它们没有用。

我创建了一个 Xcode 模板项目,纯粹是为了尝试其他问题中提到的各种组合,但仍然无济于事。

1)首先提到的是动作扩展应该有自己的资产目录,好的,这里是:

2)其次,它应该包含一个应用程序图标图像集,这里是:

3) 第三,人们说他们必须将其目标成员添加到扩展程序和应用程序中。这也是(在所有这些事情中,我尝试了各种变体,例如成员资格只是扩展程序,只是应用程序,两者都是)

4) 第四,人们提到他们必须将它添加到编译源中,也就是说,它被复制到捆绑资源中:

5) 有人说它还需要复制到容器应用程序的包中,也就是说,它也被添加为该容器的编译资源:

6) 有人说有必要将容器应用程序资产添加到扩展包中,我看不出这将如何工作,因为容器应用程序中的图标是彩色的并且不符合扩展图标的要求,但到底是什么,不妨尝试一切正确,当我们这样做的时候,让我们在任何地方添加资产:

7) 资产图标本身很重要,不显示彩色图标,但我还是尝试了。一个简单的黑白图像被描述为白色部分显示为灰色,但我已经尝试过了。尝试不受支持的图标只是绝望和实验,当然我实际上使用的是具有透明背景的图标。当张贴在这里时,它在此网页上当然显示为全白,但非黑色部分实际上是完全透明的,并且 alpha 为 0:

但尽管尝试了上述所有不同步骤的多种组合,但它在设备上是这样的:

这是使用 iOS 10.n、最新的 10.7(尚未与任何测试版一起使用)和 Xcode 8.6。如果我从应用程序商店下载使用操作扩展的应用程序,那么它们的图标就会出现,所以 10 beta 没有问题。问题要么是使用 Xcode beta 构建应用程序,要么是我错过了某个步骤 - 如果是这样,那又是什么?

【问题讨论】:

【参考方案1】:

终于找到了解决方案 - 为了使其正常工作,还需要设置扩展的 Build Settings 部分的 Asset Catalog 编译器选项,以指定资产目录中应用程序图标集的名称:

如何设置动作图标确实是 iOS 记录最糟糕的方面,非常糟糕。

【讨论】:

还应注意,在添加 xcassets 文件之前,您无法在扩展程序的构建设置中看到该选项。 升级到 Xcode 9.1 后设置这个甚至不起作用,仍在寻找解决方案,f&&k apple for this,f&&k xcode for this!

以上是关于它只是不可能添加一个动作扩展图标的主要内容,如果未能解决你的问题,请参考以下文章

在 Flex 中的 spark TextInput 中添加搜索图标

如何在android中添加actionbar white图标

是否有用于向任务栏图标添加徽章的 Windows API?

React 中的 SVG 图标不显示

photoshop动作批处理图片问题

UIPanGestureRecognizer 不触发动作