2013-12-21 3 views
6

私のiOSアプリケーションでは、ユーザーの設定に基づいてアイコンの色を変更する必要があります。私たちの重要なビジネスオプションの1つです。iosアプリケーションでsvgまたはフォントアイコンを使用

私の友人の一人が.svgまたはフォントアイコンを使用して私に助言しました。そして私を共有しましたlink

iOSアプリケーションを開発しているうちに、Webアプリケーションを作成しています。 iOSはこのテクニックもサポートしていますか?はいの場合、どうすれば使用できますか?

編集

私は、iPhone/iPadのアプリケーションに使用されてSVGKitを見つけました。モノトゥッチに使用するためのバインディングライブラリはありますか?

答えて

5

SVGフォント(パス)は、ソースコードに簡単に変換できます。一度これを持っていると、さまざまな色、サイズ(iphone/ipad)または解像度(例えば網膜)でレンダリングするのが非常に簡単です。

これは私が行ったことですhereです。これはFontAwesomeの旧バージョン用ですが、アプリケーションのままで(または最新のものに)使用できます。

+0

私はこれがMac用のものだと私はxamarin studioと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

あなたはここに利用できるFontAwesome+iOS

すべてのアイコンを使用することができます:あなただけのアイコンの色を変更する必要がある場合link

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を使用することができます。アイコンの数が限られていると、実際には高速でオーバーヘッドが発生しません。

関連する問題