問題タブ [nslayoutconstraint]

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 に答える
1655 参照

ios - プログラムによる制約付きのポイント A からポイント B への UIImageView (ビュー) のアニメーション化

画面の中央右に並べた画像ビューがあります。制約付きで画像ビューを単独で追加する場合は、すべて問題ありません。元の位置 (ポイント A) から画面の下部 (ポイント B) まで画像ビューをアニメーション化する必要があります。問題は、ポイント A からポイント B にアニメーション化しようとすると、イメージ ビューが画面の左上隅から始まることです。中心) 。

コードといくつかのコメントは次のとおりです。

..

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

iphone - 自動レイアウトはストレッチ画像、自動レイアウト、iOSです

私は次のようにuiimageviewをボタンに追加しています:

  1. uiimageviewはy軸に沿った中心です(再編集したばかりです)
  2. uiimageviewの末尾のスペースは常にボタンから10ポイントです

そしてこの目的のために、私は次のようにしています

しかし、私が得ているのは、uiimageviewが以下のように伸びているということです

ここに画像の説明を入力してください

誰かがこれについて何か考えを持っていますか?すべてのコメントはここで高く評価されています。

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

ios - NSLayoutConstraintの設定

いくつかの情報を表示するようにパネルを設定しようとしています。自動レイアウトを希望どおりに機能させるのに問題があります。

これが私がやろうとしていることです:

ここに画像の説明を入力してください

私はheaderView、UIImageView、5つのラベルを持っています。ラベルを垂直に並べて、UIImageViewから8間隔で配置したいと思います。私はそれらを垂直に簡単に並べることができます:

しかし、それらを画像ビューから整列させることは、退屈で冗長なことを証明しています。

これを行うためのより良い方法のように思えます。次に、画像ビューへの各ラベルに制約を設定します。最初の制約に追加しようとしNSLayoutFormatAlignAllCenterXましたが、すべての中心がコンテンツビューの中心Xに設定され、ラベルの中心Xが互いに整列していません。NSLayoutFormatAlignAllBaselineを垂直に使用すると、エラーとクラッシュが発生します。

データ(エーカー:'値')に対してこれを再度実行する必要があります。

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

ios - UIScrollViewと制約の問題

UIScrollViewを作成します。

次に、UIViewControllerで、スクロールビューを追加し、サイズを指定します。

次に、スクロールビューに配置するカスタムUIViewを作成します。

subViewを右上隅に配置する必要がありますが、そうではありません。

subViewの作成時、filterListViewの幅は0であるように感じます。これは、superViewが768の場合、subViewアンカーは(383、20){superViewの幅(768)-subViewの幅(365)-パディング(20)である必要があります。 }。

これは私を苛立たせます、それはうまくいくはずです。UIScrollViewsは、制約によって異なる動作をしますか?

編集:

はい、UIScrolViewは制約を異なる方法で処理します。スクロールビューをUIViewに変更しましたが、正常に機能します。

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

objective-c - UIView 要素レイアウトの制約

私はiOS開発にかなり慣れていませんが、独自の複合UIViewをカスタムUIButtonとして作成したいところまで来ました。次のように UILabel と 2x UIImageViews をレイアウトしたいと思います。

ここに画像の説明を入力

しかし、翻訳によると、ラベルが拡大すると、ビューが余分な領域を自動的に処理するように、コントロール (サブビュー) を固定したいと思います。例えば;

ここに画像の説明を入力

理想的には -

  • 右側の UIView は右側に固定されています。固定幅/高さ (右揃え) のままです。
  • ラベルと下の画像が残りの左側のスペースを分割します
    • ラベルは上部の残りのスペースの上半分の垂直方向の中央に配置されます
    • 下の画像は、下の残りのスペースの中央 (垂直方向と水平方向の両方) に配置されたままになります。
  • ラベルが下の画像よりも広い場合、ビューは拡大する必要があります

必要に応じて、これを純粋なコードで作成できます。上記の画像で XIB を使用して、属性を操作し、質問を視覚化しました。

私は C#/XAML のバックグラウンドを持っているので、通常は固定/自動/* の列と行を持つグリッド レイアウトを使用しますが、ここでは NSLayoutConstraints のようなものを使用する必要があると推測しています。残念ながら、どこからどのように開始すればよいかわかりません。解決策を探すために。どんな助けでも大歓迎です!

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

xcode - アンカー操作に匹敵する iPhone 5 と iPhone 4 の間でサイズ変更される制約ベースのビューを作成するにはどうすればよいですか?

私が理解しているサイズ変更管理の唯一の種類は、古典的なスプリングとストラット、別名「アンカーと整列」、または「マスクの自動サイズ変更」のようなものです。ただし、XCode 4.6 では、iOS 6 で導入された制約を使用した「自動レイアウト」がデフォルトであり、方法を習得すると、特定の単純なことは難しくなりますが、新しい配置の全世界が可能になります。 (明確にするために言うと、一部のユーザーは、自動レイアウトの戦いと戦わずに単純なビューを機能させることだけを気にする場合があるため、Matt によって早期に Autolayout をオフにする回避策が提案されました。これを以下に再現します)

iOS 6 Layout Constraints、Interface Builder の編集制約システムがわかりません。

ここに画像の説明を入力

XCode Interface Builder が自動的に制約を作成する場所 (ビューの端など) では、私が理解しているように動作するようです。

私が理解していないのは、ここに示されている .xib で、ここでも入手可能であり、緑とマゼンタの領域が一定の境界線 (それらの間の白い領域) を維持することができない理由です。 、ビューのサイズに何が起こっても。

つまり、緑色の領域を垂直方向にサイズ変更せず、水平方向にのみサイズ変更する必要がありますが、フォームの下部に固定することを主張しており、新しい空白のペン先から再び開始しますが、インターフェースビルダーを復元するため、緑とマゼンタのビューが再び表示されます。インターフェイス ビルダーが「ばかげた」状態になると、親ビューの下端からの距離に関して緑のビューの下端のみを定義することを主張し、それ以外の場合は (いくらいじっても) 使用しません。単なるドラッグ アンド ドロップ操作。Pin コマンドも試してみましたが、機能する pin コマンドが見つかりませんでした。

制約の 1 つを手放すには、インターフェイス ビルダーのメニューやドラッグ アンド ドロップと格闘するだけでは十分ではないようです。私は自分が何をすべきか理解できません。制約を削除しますか? どのように?IB Objects ペインまたは Utilities -> Size インスペクタのいずれからも、私が見る限り、制約はまったく削除できません。削除オプションがありますが、制約領域の「歯車」アイコン ボタンをクリックすると表示されるドロップダウン メニューでグレー表示されます。

理想的には、ビューが広くなるにつれて緑色の領域のサイズが変更されるといいのですが、高さが高くなったり短くなったりするのではありません。これは他のすべてのツールで明らかだと思いましたが、XCode + Autolayout では、まったくサイズ変更されないか、4 方向すべてでサイズ変更されます。やりたくないことをしている制約を削除または削除することはできません。別のビュー内にある各ビューに 4 つの制約が必要ですか?

(更新 1: あいまいな、または指定されていないレイアウトになる制約を削除することはできません。)

(更新 2: ときどき、uiview ペインが兄弟にスナップしない場合、その uiview を削除して再試行すると、兄弟に自然に「スナップ」され、制約は、親。)

(更新 3: Matt は彼の回避策を削除しました。以下に再掲します。)

そもそも Autolayout を望まず、古いスプリングとストラットを元に戻したいだけの人のための回避策:

ステップ 1: 自動レイアウトをオフにします。

ここに画像の説明を入力

ステップ 2: 正しい自動サイズ変更マスクを選択します。

ここに画像の説明を入力

0 投票する
3 に答える
48791 参照

ios - Interface Builder の「幅が高さに等しい」という制約

Interface Builder で「幅が高さに等しい」という意味の「正方形」制約を作成する方法が見つかりません。このような制約をプログラムで追加することは可能だと思います。IBでできることはありますか?私が見てないだけかも?それは些細なことのようですが、私はそれを見つけることができません。

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

ios - プログラムで NSLayoutConstraints を変更してアニメーション化する方法は?

プログラムで NSLayout 制約を介して複雑なレイアウトを定義しています。今、要素の 1 つをアニメーション化する必要がある状況に陥っています。

ビュー crossFadeControlView をアニメーション化し、高さを変更する必要があります。これは明らかに、もう一方が動的に縮小する必要があることを意味します。それは可能ですか?

そうでない場合...私のオプションは何ですか?

以下は私の制約です:

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

cocoa-touch - 自動レイアウトを使用して UITableView の前にビューを表示する

以下は、私が自分の見解のために設定しているものです。0のmask(UIView) があります。bottom space to superviewここに画像の説明を入力

シミュレータ(iphone-retina 4)やデバイス(iphone 5)で表示するとマスクが消えてしまいますが、シミュレータ(iphoneやiphone 3.5)やデバイス(iphone4)では問題ありません

「スーパービューへの下部スペース = 0」は、マスクを画面外に出さないようにする必要がありますか?

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

iphone - NSLayoutConstraints を UIView サブクラスに適用する

以前にIBでAutoLayout制約を使用してみましたが、それらがどのように機能するか、明確にする必要があることなどを理解しています...

しかし、2 つ以上のビューがあると、少し複雑になり、壊れる傾向があります。

それで、同じ問題を抱えていて、代わりに ASCII コードを使用して制約を作成している人物についてのブログを読んだところです。

コンテンツの量に基づいて動的なサイズを持つカスタム UITableViewCell を持つ UITableView があります。自動レイアウトに最適な候補です。

それで、私はそれを行ういくつかの方法を試しましたが、セルにラベルが 1 つだけになるようにコンテンツを削減しました。

ラベルがセルをその周りに境界線で塗りつぶすようにしたいと思います。

つまり、標準サイズはセルの各端から内側を指します。

こんなんやってしまった…

しかし、セルが表示されると、ラベルは、初期化に使用した CGRect とまったく同じように左上隅にあり、制約に関するこの負荷のエラーが発生します...

これのデバッグをどこから始めればよいかわかりません。制約は絶対に最小限ですが、それでも完全に失敗します。

誰かがこの制約を機能させる方法の正しい方向に私を向けることができますか?