web-dev-qa-db-ja.com

Xcode 8イメージの完成

Xcode 8では、入力中に画像が自動補完されます。

質問:なぜ?

提案された結果でUIImageを初期化しようとしましたが、動作しません。

Inside UIImageOutside UIImage

誰もそれを使用する方法を知っていますか?

33
CZ54

Xcode 8は、アセットカタログにある画像を自動的に認識し、UIImageイニシャライザー内で提案として提供します。

したがって、基本的にあなたがする必要があるのは次のことだけです(あなたが質問で行ったように、しかしそれを邪魔する何かがあるはずです):

_let i = voiture // image name
_

そして、画像を設定したいときにiを使用します。

内部では、#imageLiteral(resourceName: "voiture.png")のようなコードを作成しています。ただし、ソースエディタではインラインで、画像のファイル名が表示されるだけです。 _#imageLiteral_構文は、Swift 3以降でのみ認識されます。

ここ はデモンストレーションvideoリンクで、これを行う here私が作成したサンプルプロジェクト

instellisenseの提案をクリックして、コード内の画像のサムネイルと画像名を確認する必要があります。

更新
この機能はXcodeバージョン9.0ベータ6(9M214v)enter image description here

48
Rashwan L

「公式」ソースを見つけることはできませんが、個人的なテストから、オートコンプリートはSwift 2.3とSwift 3.0プロジェクトでは、イメージリテラルはSwift 3プロジェクトでのみ正しく動作します。

Swift 3プレイグラウンドで試してみると、うまくいくことがわかります。

enter image description here

10
Dave Lyon

画像リテラルはすでにUIImageであるため、UIImageに初期化するために渡す必要はありません。

10
Chris Hanson

この機能を使用しています。基本的に、「ic」で始まる画像がある場合は、let i =に続けてicを入力します。この時点で、Xcode 8は画像のドロップダウンを表示し、リストから正しい画像を選択します。実際にUIImage(と入力することはありません。画像のファイル名を使用することを除いて、オートコンプリートコードと同じように機能します。

あなたの場合、おそらくコンパイルが失敗する原因となる他の問題があります。

4
Hong Wei