2013-12-21 71 views
6

在我的iOS應用程序中,我們需要根據用戶配置更改圖標的顏色。這是我們重要的商業選擇之一。在ios應用程序中使用svg或字體圖標

我的一位朋友建議我使用.svg或字體圖標。並與我分享link

他們正在創建Web應用程序,而我正在開發iOS應用程序。 iOS是否也支持這種技術?如果是的話,我該如何使用它?

編輯

我發現SVGKit是用於iPhone/iPad應用程序。是否有任何綁定庫在單點觸摸上使用它?

回答

5

SVG字體(路徑)很容易轉換爲源代碼。一旦你有這個,它是非常簡單的渲染他們在不同的顏色,大小(iphone/ipad)或分辨率(如視網膜)。

這就是我做的here。這是爲了更老版本的FontAwesome,但它可以按原樣(或更新到最新版本)用於您的應用程序。

+0

因爲我看到這是Mac,我不能打開它與Xamarin工作室和Monotouch。我的問題是關於在iOS應用上使用svg。可能嗎? –

+0

我發現這個https://github.com/SVGKit/SVGKit,似乎是在iPhone/iPad應用上使用。是否有任何綁定庫在單點觸摸上使用它? –

+0

你看起來不夠遠。 Tere是**結果**的一個iOS演示**,但是從SVG到源代碼的轉換是在Mac(或Windows)上完成的,因爲它是編譯(源代碼)的地方。 https://github.com/spouliot/svgpath2code/tree/master/AwesomeDemo – poupou

0

如果你只需要改變圖標的​​顏色,你或許可以解決這個不SVG。只需使用淺色。

創建模板圖像:

let templateImage = UIImage(named: "bla_bla")?.withRenderingMode(.alwaysTemplate) 

然後將其添加到一個按鈕或圖像瀏覽和設置tintColor

button.setImage(templateImage, for: .normal) 
button.setImage(templateImage, for: .highlighted) 

button.tintColor = UIColor.blue 

此解決方案僅適用於單色圖標!

此外,如果你想.svg,你可以使用WKWebView,它非常快速,並且不會因爲圖標數量有限而導致開銷。