2017-11-13 4 views
-2

iOSのアプリでは約75%のテストが開始されていますが、ストーリーボードのデバイスはシミュレーションされたデバイスと同じである必要があります。デバイスの幅に基づいて計算されます。Xcodeのストーリーボードのデバイスとシミュレータは同じにする必要があります

iPhone 5sとしてストーリーボードビューを設定し、iPhone Xデバイスでアプリを実行したときに、画面の幅に基づいてその幅を占めるコンポーネントが乱雑に見えています。実際のデバイスの幅ではなく、ストーリーボードの画面幅を取るのはなぜですか?

これは実際のデバイスでも実行されますか?また、私はアプリストアにアプリをリリースしようとしているとき、私は同じ問題に直面するだろう。

+0

xcodeにバグがあり、実際のデバイスでアプリを実行しているときに、コンポーネントがデバイスの幅に応じて幅を占める場合、すべて正常に動作します。 –

+0

自動レイアウトを使用しましたか? – VictorLi

+0

はい私は自動レイアウトを使用しており、他のすべてのUIコンポーネントと正常に動作します。何らかの理由で、グラデーションフレームをビューの境界に設定しているので、グラデーションが原因で問題が発生しています。そして私が5Sとしてストーリーボードを走らせ、シミュレータをXとして走らせると、グラジエントは5sの高さと幅をとります。私はこれがxcode 9の問題であり、実際のデバイスで実行されているアプリケーションには影響しないことを願っています。 –

答えて

0

自動レイアウトを使用した場合、これは先行スペース制約のために起こります。UIエレメントの先頭のスペース制約をスーパービューから設定した場合、デバイスの幅に応じて幅が増加し、デバイスは、先頭の幅の制約を削除し、幅の制約の修正を設定します。

+1

レスポンシブなアプリケーションをビルドしているときにコンポーネントの固定幅と高さを使用するのは悪いUI開発方法ですか? –

関連する問題