如何刷新图标缓存?

soa*_*gem 24 icons mono gtk monodevelop

首先,我并不是 100% 肯定我在这里写的主要问题实际上是问题,但我有一种预感。不久前,我在 Mono 中编写了一个简单的 Gtk# 应用程序,并为其提供了一个自定义 ICO 作为其图标文件。工作得很好。

最近我去把这个图标换了个不同的,但是当我构建和运行程序时,它仍然显示该图标。我确保已将每个对图标文件的引用更新为新的,并完全从硬盘驱动器中删除了旧图标。但是当我运行程序时它仍然显示在启动器中。

我假设这意味着 Gtk 将图标缓存在 Ubuntu 中的某处,我可能需要强制刷新它。有什么建议吗?

Tim*_*uck 34

在终端中运行以下命令:

sudo update-icon-caches /usr/share/icons/*
Run Code Online (Sandbox Code Playgroud)


Bre*_*ong 8

你需要:

  • 更新顶级图标目录上的时间戳
  • gtk-update-icon-cache

注意:hicolor 是应用开发者应该使用的默认主题。如果您正在制作图标主题,请改为刷新图标主题的文件夹。

sudo touch /usr/share/icons/hicolor ~/.local/share/icons/hicolor
sudo gtk-update-icon-cache
Run Code Online (Sandbox Code Playgroud)

请参阅(我能找到的唯一文档):https : //fedoraproject.org/wiki/Packaging : Scriptlets#Icon_Cache


L. *_*mes 2

如果使用 Unity(Ubuntu 17.04 之前):在终端命令提示符下键入:

$ unity
Run Code Online (Sandbox Code Playgroud)

这将更新启动器中的 *.desktop 图标。

如果问题不是 Ubuntu 启动器而是应用程序本身,请查看stackoverflow.com以获取编程解决方案。

与此类似的问题已在此处得到解答。也看这里

  • @LDJames,当前运行的“unity”将强制关闭所有正在运行的应用程序并重新启动unity。因此我在浏览器中丢失了数据。 (3认同)