Làm cách nào để làm mới bộ đệm biểu tượng?


17

Trước hết, tôi không khẳng định 100% rằng câu hỏi chính tôi đã viết ở đây thực sự là vấn đề, nhưng tôi có linh cảm rằng đó là. Tôi đã viết một ứng dụng Gtk # đơn giản trong Mono cách đây một thời gian và đã cho nó một ICO tùy chỉnh làm tệp biểu tượng. Làm việc tuyệt vời.

Gần đây tôi đã thay đổi biểu tượng này sang một biểu tượng khác, nhưng khi tôi xây dựng và chạy chương trình, nó vẫn hiển thị biểu tượng. Tôi đã đảm bảo rằng tôi đã cập nhật mọi tham chiếu đến tệp biểu tượng sang tệp mới và đã xóa hoàn toàn biểu tượng cũ khỏi ổ cứng. Nhưng nó vẫn hiển thị trong Trình khởi chạy khi tôi chạy chương trình.

Tôi giả sử điều này có nghĩa là Gtk lưu trữ các biểu tượng ở đâu đó trong Ubuntu và tôi có lẽ cần phải buộc nó để làm mới. Có lời khuyên nào không?

Câu trả lời:


25

chạy như sau trong một thiết bị đầu cuối:

sudo update-icon-caches /usr/share/icons/*

+1, hoạt động hoàn hảo trên wayland.
ankostis

Vẫn có liên quan. Chỉ cần khắc phục sự cố biểu tượng ứng dụng của tôi trên Ubuntu 19.04.
Jamie Carl

4

Bạn cần phải:

  • Cập nhật dấu thời gian trên thư mục biểu tượng cấp cao nhất
  • Chạy gtk-update-icon-cache

Lưu ý: hcolor là chủ đề mặc định mà các nhà phát triển ứng dụng nên sử dụng. nếu bạn đang tạo một chủ đề biểu tượng, thay vào đó hãy làm mới thư mục của chủ đề biểu tượng của bạn.

sudo touch /usr/share/icons/hicolor ~/.local/share/icons/hicolor
sudo gtk-update-icon-cache

Xem (tài liệu duy nhất tôi có thể tìm thấy cho việc này): https://fedoraproject.org/wiki/Packaging:Scriptlets#Icon_Cache


2

Tại dấu nhắc lệnh của thiết bị đầu cuối:

$ unity

Điều này sẽ cập nhật các biểu tượng * .desktop của bạn trong Trình khởi chạy.

Nếu vấn đề không phải là Trình khởi chạy Ubuntu mà chính ứng dụng hãy xem http://stackoverflow.com để biết các giải pháp lập trình.

Một vấn đề tương tự như vậy được trả lời tại /programming/5315359/custom-libindicator-icon-is-not-displayed/6503807#6503807

Đồng thời xem tại: https://developer.gnome.org/gtk3/urdy/gtk-update-icon-cache.html


Điều này đã không hoạt động
soapergem

@SoaperGEM unityVấn đề với launcher thực tế. Chạy thống nhất tại một dấu nhắc lệnh sẽ làm mới Biểu tượng Trình khởi chạy của Ubuntu. Câu trả lời của tôi đã hướng đến một Ubuntu Launchervấn đề. Vì nó không hoạt động nên rất có thể là gtkvấn đề lập trình. Bạn có thể nhận được câu trả lời tốt hơn (nhanh hơn) với vấn đề lập trình gtk thực tế tại stackoverflow.com . Sau khi giải quyết hiển thị Biểu tượng thực tế của chương trình gtk, đó là khi bạn sẽ chạy unitylệnh để cập nhật bộ đệm Trình khởi chạy của Ubuntu. Hãy cho tôi 5 phút để cập nhật câu trả lời của tôi.
LD James

Câu trả lời này cần một cảnh báo về nó.
Ace

@Ace Bạn có thể giải thích cảnh báo không?
LD James

3
@LDJames, hiện đang chạy unitysẽ buộc đóng tất cả các ứng dụng đang chạy và khởi động lại sự thống nhất. Tôi đã mất dữ liệu trong trình duyệt của mình vì điều này.
Ace
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.