2016-09-26 6 views
2

最近、iOSプロジェクトをXcode8で必要とされるSwift 2.3にアップデートしました。 Xcode8に導入されたインターフェイスビルダーには、View As:という新しい機能があります。ここでは、さまざまなデバイスに切り替えて、実際にアプリケーションを実行せずに直接インターフェイスビルダーから結果を見ることができます。これはすぐにXcode8で私のお気に入りの機能になります。しかし、私はUIImageViewを扱うときに、この関数を使っていくつかのバグのある動作に気がつきました。Xcode8 Interface Builder UIImageViewは異なるデバイス上で未知のイメージを表示します

インタフェースビルダーでは、UIImageViewはイメージソースを入力した後でiPhone 6s Plusでのみイメージを正しく表示します。 View as:オプションで他のデバイスに切り替えた後、画像に大きな疑問符が表示されます。

enter image description here

あなたが見ることができるように、画像の表示が正しく、私はiPhone 6Sプラスとして表示するように設定したとき。

enter image description here

他のデバイスへの切り替え、画像が不明になった場合。これは最終的な結果には影響しませんが、アプリが実行されても画像は正しく表示されます。インターフェイスビルダーで正しく表示されない箇所は間違っていると感じます。

+0

私はこの問題も抱えていますが、それを回避する方法はまだ分かりません。 –

答えて

2

ちょうど質問hereに回答しました。

ソリューション:

私は同じ問題を抱えていたと私は私が(左下)ストーリーボードで選択したデバイス「として表示」に対応するサイズでイメージを持っていないので、それはだということが分かりました。

@ 2xイメージ(例:iPhone 6s)が必要なデバイスを選択し、@ 3xイメージのみを使用した場合は、疑問符が表示されます。ストーリーボード用に使用しているデバイスのサイズに対応するイメージのサイズを追加すると、イメージがimageViewに表示されます。

基本的には、@ 1x、@ 2x、@ 3xの3つのサイズの画像が必要です。

+0

イメージアセットに2倍と1倍のイメージを入れた後で動作します。しかし、イメージが実行時に表示される場所は理にかなっていませんが、2xと1xの両方のイメージが存在しない場合はIBでは表示できません。とりあえずありがとう :) –

関連する問題