2017-05-01 141 views
1

我需要在iOS中以編程方式更改應用程序圖標的顏色。iOS - 如何以編程方式設置/更改/重置應用程序圖標?

我正在研究基於主題的應用程序,我需要在應用程序的可視內容上應用主題顏色,用戶從顏色列表中進行選擇。完整的應用程序工作正常(能夠根據用戶選擇的主題更改所有組件的顏色)except application Icon

是否有任何方法以編程方式更改/重置應用程序圖標/圖像 。或者我可以更改應用程序圖標/圖像色調顏色?

這裏是正&負兩者(贊成)的答案,都被upvoted同樣的問題。 (Can I change app icon programmatically)。它會造成混亂,無論是否可能。如果是的話,那我該怎麼做?

注:我有一定的要求比其他問題/答案不同,我在應用程式中所顏色列表(約25),我需要改變圖標顏色,可根據用戶的色彩選擇,從應用程序。任何人都可以指導一種正確的方式來利用/使用單套應用程序圖標並在其上應用不同的顏色?

+1

這是不可能 – Mannopson

+0

@Mannopson有可能看到http://stackoverflow.com/a/41951096/7347933 – paper1111

+0

@ paper1111謝謝,讓我試試這個... – Krunal

回答

4

可以從iOS 10.3更改appIcon。爲此,您需要在info.plist中將supportsAlternateIcon設置爲Yes。主要和次要圖標都應添加到應用的Info.plist文件的CFBundleIcons項中。

要更改應用程序圖標下面的UIApplication的方法被調用:

func setAlternateIconName(_ alternateIconName: String?, completionHandler: ((Error?) -> Void)? = nil) 

Reference

+0

嘗試此答案,但尋找更有效的答案,因爲我有顏色列表(約25),我需要更改圖標顏色,該用戶從應用程序中選擇。你的答案可以嗎? – Krunal

+0

您需要爲您的軟件包添加25個不同的圖標;創建它時,所有圖標都需要包含在包中。您只能選擇其中一個包含的圖標;你不能在運行時創建一個新的 – Paulw11

+0

@ Paulw11你能指導一種正確的方式來利用/使用一組圖標並在其上應用不同的顏色。 – Krunal

相關問題