問題タブ [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.
ios8 - サイズクラスを使用した iOS 8 自動レイアウト
これは私を夢中にさせています。必要なのは、サブビューをスーパービューに合わせてその境界を埋めることだけです。これを行うには、ストーリーボードのサブビューに対して 4 つの Autolayout 制約を作成し、サブビューに対して上、左、下、右の余白を 0 に設定するだけでした。ただし、Size クラスが有効になっている Xcode 6 では、左マージンと右マージンはデフォルトで -16 に設定され、それらを 0 に設定しても効果はありません。私が何をしても、サブビューがスーパービューの境界を埋めることはなく、左右にピクセルのギャップがほとんどありません。どうすれば回避できますか?
参考までに: これは iPhone 6+/iPad Air シミュレーターで発生します。
ios - xcode 6 でのサイズ クラスの使用の混乱
サイズクラスの使用は初めてで、とても混乱しています。新しいストーリーボード プロジェクトでは、サイズ クラスのチェックボックスはデフォルトでオンになっており、wAny hAny に設定されています。main.storyboard を右クリックしてソース コードを表示すると、予想どおり "width="600" height="600"" と表示されます。次に、インターフェイス ビルダーに戻り、wCompact hRegular に変更し、ソース コードを調べると、まだ width="600" height="600" と表示されていて、混乱しました。width="400 ではないはずです。 "高さ="800"? 私が逃したものはありますか?よろしくお願いします。
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でそれを修正することは可能ですか、それともコードで画像を手動でリセットする必要がありますか?
ios - IOS 7.1、ターゲット デバイス ファミリが iPad に設定されている場合、ユニバーサル ストーリーボードの通常の幅の制約が無視される
Xcode 6.1 で新しいシングル ビュー プロジェクトを開始
し、ターゲットに移動し、デバイス ファミリをユニバーサルに設定し、展開ターゲットを 7.1 に設定しました
ストーリーボードでは、サイズ クラスに赤いラベルを配置し、サイズ クラスRegular Width | Any Height
に青いラベルを配置しました。Compact Width | Any Height
ドキュメントによると、ipad で実行すると赤のラベルが表示され、iphone で青のラベルが表示されるはずです。これまでのところ、これはシミュレーターと実際のデバイスの両方で期待どおりに機能しています。
ここで、ターゲットに戻り、Device Family を IPadに設定し、アプリケーションを再度実行します。
シミュレーター上の iPad 2 (7.1) - 赤ラベル
iPad 2 (7.1) (実機) -青ラベル ?!?!?
iPad 2 (8.1) (実機) - 赤ラベル
同じことが、iPad Air/iPad mini と、私が遭遇した IOS 7.1 を搭載した他のすべての iPad にも当てはまります。
基本的に、iOS 7.1 で iPad のデバイス ファミリを設定すると、ユニバーサル ストーリーボードで、ストーリーボードがコンパクト サイズと見なされることがわかります。IOS 7.1 と互換性がある必要があり、アプリケーションは最初は iPad 用にのみリリースされます。誰もそれを修正する方法の手がかりを持っていますか?
編集
Apple のドキュメントによると、iOS 8 より前のバージョンの iOS をサポートするアプリの場合、ほとんどのサイズ クラスは下位互換性があります。サイズ クラスは下位互換性があります。
アプリが Xcode バージョン 6 以降を使用してビルドされている
アプリの展開対象はiOS 8以前
サイズ クラスは、ストーリーボードまたは xib で指定されます
高さコンポーネントの値がコンパクトではありません
上記のすべてが私の例に当てはまります。
ios - AutoLayout での ScrollView の問題 (Xcode 6)
アプリケーションの登録フォームを作成しようとしています。
scrollView にすべての欲望のテキストフィールドをドロップした後、すべての欲望の制約を設定し、サイズ クラスに「Any H」と「Any W」を使用しています。
ストーリーボードでは、textField の幅に関する警告が表示されます。これをデバイスで実行すると、テキストフィールドが縮小されます。以下の画像を参照してください。
私を助けてください。
ios - 既存の Xcode プロジェクトへのサイズ クラスの追加
デプロイ ターゲット 6.1 以降のユニバーサル アプリケーションがあります。アプリケーションは既にアプリ ストアにあります。ここで、新しい要件に従って変更を加え、iOS 8.1 用に更新する必要があります。「Main_iPhone」と「Main_iPad」として自動レイアウトの 2 つのストーリーボードがあります。
質問: 今すぐサイズ クラスを実装したいと考えています。アプリケーションまたはプロジェクト設定内で必要な変更は何ですか?
これらの 2 つのストーリーボードを削除して新しいストーリーボードを作成し、すべてを再設計するか、他のより適切な方法がありますか?
注: 必要な変更の詳細な箇条書きの手順は非常に役立ちます。オートレイアウト(中級)は知っています。「サイズクラス」の場合は初級者。
前もって感謝します。ハッピーコーディング。
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 には意味がありません。
**編集**物理デバイスで同じ動作が見られることを確認できます
ありがとう
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 にあります。
それは迅速なバグですか、それとも何か間違ったことをしようとしていますか?