問題タブ [size-classes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1260 参照

ios8 - サイズクラスを使用した iOS 8 自動レイアウト

これは私を夢中にさせています。必要なのは、サブビューをスーパービューに合わせてその境界を埋めることだけです。これを行うには、ストーリーボードのサブビューに対して 4 つの Autolayout 制約を作成し、サブビューに対して上、左、下、右の余白を 0 に設定するだけでした。ただし、Size クラスが有効になっている Xcode 6 では、左マージンと右マージンはデフォルトで -16 に設定され、それらを 0 に設定しても効果はありません。私が何をしても、サブビューがスーパービューの境界を埋めることはなく、左右にピクセルのギャップがほとんどありません。どうすれば回避できますか?

参考までに: これは iPhone 6+/iPad Air シミュレーターで発生します。

0 投票する
0 に答える
311 参照

ios - xcode 6 でのサイズ クラスの使用の混乱

サイズクラスの使用は初めてで、とても混乱しています。新しいストーリーボード プロジェクトでは、サイズ クラスのチェックボックスはデフォルトでオンになっており、wAny hAny に設定されています。main.storyboard を右クリックしてソース コードを表示すると、予想どおり "width="600" height="600"" と表示されます。次に、インターフェイス ビルダーに戻り、wCompact hRegular に変更し、ソース コードを調べると、まだ width="600" height="600" と表示されていて、混乱しました。width="400 ではないはずです。 "高さ="800"? 私が逃したものはありますか?よろしくお願いします。

0 投票する
2 に答える
618 参照

ios8 - アセット カタログとサイズ クラスを使用して、UIButton のイメージ プロパティが正しくレンダリングされない

UIButton の image プロパティに問題があります。私のアセット カタログには、Any / Any size クラスのデフォルト イメージと、Regular / Regular クラスに固有のイメージが含まれています。Interface Builder で UIButton のイメージ プロパティを「img_facebook」に設定すると、iPad でイメージが正しくレンダリングされません (Regular/Regular の代わりに Any/Any サイズのイメージが選択されます)。しかし、「traitCollectionDidChange:」メソッド内で更新すると、画像は正しくレンダリングされます (添付のコード スニペットを参照)。

IB が UIImage インスタンスを作成し、それを一度だけプロパティに割り当てているようです。それは理にかなっていますが、UIButton の代わりに UIImage で同じことを行うと、すべてが完全に正常に機能します。

誰かが同様の問題を経験しましたか? IBでそれを修正することは可能ですか、それともコードで画像を手動でリセットする必要がありますか?

0 投票する
2 に答える
1053 参照

ios - IOS 7.1、ターゲット デバイス ファミリが iPad に設定されている場合、ユニバーサル ストーリーボードの通常の幅の制約が無視される

Xcode 6.1 で新しいシングル ビュー プロジェクトを開始
し、ターゲットに移動し、デバイス ファミリをユニバーサルに設定し、展開ターゲットを 7.1 に設定しました

ストーリーボードでは、サイズ クラスに赤いラベルを配置し、サイズ クラスRegular Width | Any Height に青いラベルを配置しました。Compact Width | Any Height

ドキュメントによると、ipad で実行すると赤のラベルが表示され、iphone で青のラベルが表示されるはずです。これまでのところ、これはシミュレーターと実際のデバイスの両方で期待どおりに機能しています。

ここで、ターゲットに戻り、Device Family を IPadに設定し、アプリケーションを再度実行します。

  1. シミュレーター上の iPad 2 (7.1) - 赤ラベル

  2. iPad 2 (7.1) (実機) -青ラベル ?!?!?

  3. iPad 2 (8.1) (実機) - 赤ラベル

同じことが、iPad Air/iPad mini と、私が遭遇した IOS 7.1 を搭載した他のすべての iPad にも当てはまります。

基本的に、iOS 7.1 で iPad のデバイス ファミリを設定すると、ユニバーサル ストーリーボードで、ストーリーボードがコンパクト サイズと見なされることがわかります。IOS 7.1 と互換性がある必要があり、アプリケーションは最初は iPad 用にのみリリースされます。誰もそれを修正する方法の手がかりを持っていますか?

編集

Apple のドキュメントによると、iOS 8 より前のバージョンの iOS をサポートするアプリの場合、ほとんどのサイズ クラスは下位互換性があります。サイズ クラスは下位互換性があります。

  1. アプリが Xcode バージョン 6 以降を使用してビルドされている

  2. アプリの展開対象はiOS 8以前

  3. サイズ クラスは、ストーリーボードまたは xib で指定されます

  4. 高さコンポーネントの値がコンパクトではありません

上記のすべてが私の例に当てはまります。

0 投票する
1 に答える
438 参照

ios - AutoLayout での ScrollView の問題 (Xcode 6)

アプリケーションの登録フォームを作成しようとしています。

scrollView にすべての欲望のテキストフィールドをドロップした後、すべての欲望の制約を設定し、サイズ クラスに「Any H」と「Any W」を使用しています。

ストーリーボードでは、textField の幅に関する警告が表示されます。これをデバイスで実行すると、テキストフィールドが縮小されます。以下の画像を参照してください。

ここに画像の説明を入力

私を助けてください。

0 投票する
1 に答える
326 参照

ios - 既存の Xcode プロジェクトへのサイズ クラスの追加

デプロイ ターゲット 6.1 以降のユニバーサル アプリケーションがあります。アプリケーションは既にアプリ ストアにあります。ここで、新しい要件に従って変更を加え、iOS 8.1 用に更新する必要があります。「Main_iPhone」と「Main_iPad」として自動レイアウトの 2 つのストーリーボードがあります。

質問: 今すぐサイズ クラスを実装したいと考えています。アプリケーションまたはプロジェクト設定内で必要な変更は何ですか?

これらの 2 つのストーリーボードを削除して新しいストーリーボードを作成し、すべてを再設計するか、他のより適切な方法がありますか?

注: 必要な変更の詳細な箇条書きの手順は非常に役立ちます。オートレイアウト(中級)は知っています。「サイズクラス」の場合は初級者。

前もって感謝します。ハッピーコーディング。

0 投票する
0 に答える
157 参照

ios - ios8 splitviewController と一貫性のないサイズ クラス iPhone6+

私は現在 sizeClasses と iOS8 をいじっていますが、バグである可能性があることに気付きました (シミュレーターまたはデバイスに限定されているかどうかはわかりません) が、最初にここで確認したいと思いました。

新しいプロジェクトを開始するときに標準の「Master-Detail」テンプレートを使用すると、横向きモードの iPhone 6+ で検査したときに、detailViewController で traitcollection が一貫していないように見えることに気付きました。

NSLog onviewDidAppearおよびDetailViewController に追加しwillTransistionToTraitCollectionて traitCollection を表示しましたが、これらは結果です

横向きで発売されたiPhone 6+

iPhone 6+ を縦向きで起動し、DetailViewController に移動して、rotateDevice

携帯電話が既にランドスケープ モードで起動されているかどうかがわかるように、detailViewController には、同じ viewController でデバイスを回転させる場合とは異なる traitCollection があります。これはシミュレータのバグですか?それとも、これは予想される動作ですか? もしそうなら、レイアウトを設計するときの sizeClasses には意味がありません。

**編集**物理デバイスで同じ動作が見られることを確認できます

ありがとう

0 投票する
1 に答える
791 参照

ios - Swiftでの自動レイアウト+サイズクラスの問題

ここに画像の説明を入力

上記のビューでは、viewB は、xib を使用して作成された viewA のサブビューであり、制約も ​​xib に追加されています。viewB には、そのスーパービューに対して上、下、先頭、末尾の制約があります。ファイルの所有者は、Swift View Controller です。viewB はファイル所有者と接続されています

しかし、iOS 8 を実行している iPAD でプロジェクトを実行すると、viewB が表示されませんか? (iPhoneでは表示されます)viewdidLoadとviewDidAppearでそのフレームにアクセスしようとしましたが、それは(0.0,0.0,0.0,0.0)です

これは私のプロジェクトで唯一の迅速なビュー コントローラーです。他のすべてのビューと VC は objc にあります。

それは迅速なバグですか、それとも何か間違ったことをしようとしていますか?