問題タブ [ios-autolayout]

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 投票する
10 に答える
91602 参照

ios - ストーリーボードから追加された制約をプログラムで削除する方法は?

私はグーグルで検索しましたが、答えが見つかりません。だから私は尋ねる必要があります。ホーム画面は1つです。ユーザーがログインすると、以下のような 1 つのビューが表示されます。ユーザーがログアウトして ここに画像の説明を入力 ホームページにアクセスすると、レイアウトの上に表示されますが、中央のボックス レイアウトは表示されません。そのレイアウトを非表示に設定すると、次のように表示されるようになりました。 ここに画像の説明を入力

3番目のレイアウトを少し上に移動して、空白を削除したい..

ストーリーボードを使用して制約を追加しました。ここで、プログラミングから制約を削除し、レイアウトを以下の最初のレイアウトに設定する 1 つの制約を追加する必要があります。

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

ios - 2 つのボタンと 1 つのテキスト フィールドを配置する - 制約は兄弟ではなくスーパービューに対するものです

Xcode 6 では、2 つのボタンと 1 つのテキスト フィールドを 1 つの列に配置しようとしています。

Xcode のスクリーンショット

まず、一番上のボタン (「スキャン...」) を選択し、3 つの制約を 8 ピクセルに設定します。

Xcode のスクリーンショット

これはうまくいきます。

しかし、次のボタン (「接続...」) に対して同じことを試みると、その上部の制約はスーパー ビューに関連し、他のボタンには関連しません。

Interface Builder を検索し、制約のプロパティを調べますが、それを修正する場所が見つかりません。

スーパービューまたは兄弟に関連する場合、どこで制約を切り替えることができますか?

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

ios - iOS Autolayout スーパービューでサブビューを伸ばす方法

ここに画像の説明を入力

スクリーンショットでわかるように、ここの灰色UIViewはコンテナとして使用しています。コードでは、 を割り当て、そのUINavigationControllerビューをサブビューとして灰色のコンテナー ビューに追加します。UINavigationControllerhas RootViewController(左側に切り取られたテーブル ビューが表示されます。これは、UINavigationController のルート ビュー コントローラーです) 。

私の質問は、すべての側面をスーパービューの境界に固定する方法です。今はRootViewController景色の一部しか見えないからです。

RootViewControllerストーリーボードでは、灰色のコンテナ ビューと のビューのすべての制約を設定しましたUINavigationController。通常PushViewController、サブビューとして追加する代わりに、問題なく表示されます。

UIViewControllerこれは、灰色のコンテナー ビューを含むコードです。

灰色のコンテナー ビューの制約は次のとおりです。

ここに画像の説明を入力

テーブルが切り取られたルートView Controllerのビューの制約は次のとおりです。

ここに画像の説明を入力

簡単な解決策はUINavigationController、灰色のコンテナーと同じ幅と高さをビューに設定することです。

その後、正しく動作します。しかし、フレームのみを変更しなければ機能すると思いますか?

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

uiview - プログラムで AutoLayout を使用して、UIView をその SuperView と同じ幅に設定するにはどうすればよいですか?

含まれているビューの幅と同じ幅にしたい単純な UIView があります。私はこれをプログラム的に行いたいと思っています。

サブビューの幅をコンテナーの幅に等しくする制約を含むビューに追加できます。C# は、Xamarin iOS を使用しているためですが、この AutoLayout の質問はそれに固有のものではありません。

ただし、ビューは常に全幅であるため、サブビュー内からこれを制御する方が自然に感じられます。どうすればいいですか?

SubView 内から制約を作成しようとすると、 this.SuperView を関係として使用しますが、機能しません。次の例外をスローします

NSInternalInconsistencyException 理由: 内部レイアウト属性の予期しない使用。

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

ios - 画像の位置合わせの問題?

デバイスの上部に画像を配置しようとしていますが、これらは私が適用している制約ですここに画像の説明を入力

この結果を適用して得られる結果は

ここに画像の説明を入力

そのため、上部に黒いスペースが残っています。画像を上部に固定したいのですが、画像のアスペクト比を維持したいのですが、画像をクリップできないため、アスペクト フィルを使用できません。誰かがこれで私を助けてくれますか

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

ios - NSLayoutAttributeWidth と NSLayoutAttributeLeft + NSLayoutAttributeRight の違い

ビュー1とビュー2の2つのビューがある場合。view1 の幅が別の場所に設定されているとします。view2をview1と同じ幅にしたい

それをview1に関連付けるview2のを作成できます。これLayoutConstraintにより、view2の幅がview1の幅と同じになります。NSLayoutAttributeWidth

LayoutConstraintsまたは、view2 用に2 つ作成することもできます。1 つはNSLayoutAttributeLeftビュー 1 の左に関連し、もう 1 つはビュー 1NSLayoutAttributeRightの右に関連します。左端と右端が同じであるため、view2 も view1 の幅と同じになりませんか?

幅を一致させるためのこれらの同様に有効なアプローチはありますか?

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

ios - Masonry DSL for Auto Layout を使用して、ビュー間の垂直方向と水平方向の関係をどのように定義しますか?

Apple の Visual Format Language を使用すると、スペーサーを使用して、ビューとそのスーパービューの間の水平方向と垂直方向の関係を簡単に設定できます。

以下の視覚的な例でview2を固定幅にしたい場合、view1は残りのスペースを埋めます。VFL では、この動作を次のように指定します。

|-[view1]-[view2(==100)-|

Masonry で達成したいレイアウトの視覚的な例

メーソンリーでは、これらのビュー間の関係を確立する方法が明確ではありません。view1 は view2 を「認識」しておらず、それをアンダーシュートまたはオーバーラップします。私は何が欠けていますか?

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

ios - Motion-Kit gem を使用して RubyMotion でレイアウト制約を設定解除できない

私は次のシナリオを持っています。ある場合にはビューの左側に要素をレイアウトする必要があり、別の場合には同じビューをビューの右側にレンダリングする必要があります。2 つの制約は明らかに矛盾しています。

LeftRight競合しており、望ましい結果が得られていません。たとえば、left制約のみを無効にしたり、すべての制約を無効/設定解除したりする方法はありますか?