問題タブ [container-view]

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

uiviewcontroller - インターフェイス ビルダーでコンテナー/子ビュー コントローラーの関係を作成する方法

コードから2つのView Controller間の親子関係を作成するには、基本的に次のようなことをするだけです:

ここで、selfは親ビュー コントローラーです。
しかし、Interface Builder から完全に同じ関係を作成したい場合はどうすればよいでしょうか?
言い換えれば、Interface Builder を使用してメソッド addChildViewController の動作を再作成する方法はありますか?
それに関するドキュメントはあまり見つかりませんでした。このトピックに関する古い未解決の投稿があります: https://devforums.apple.com/message/455758#455758

addChildViewController 関係を適切に設定しないと、私の質問の元である子ビュー コントローラーに回転メソッドが転送されません。

これは私がIBで行ったことです:

  1. 「View Controller」オブジェクトを「Object Library」パネルから「Objects」パネルにドラッグ アンド ドロップします。
  2. ID インスペクターで、そのクラスを UIViewController サブクラス ("Items View Controller") に変更しました。
  3. ビューアウトレットをコントローラーに接続しました
  4. 他のすべての必要なコンセントをコントローラーに接続しました (リスト名、テーブル ビュー)

写真の最初の「ビュー」オブジェクトは、親ビュー コントローラーのビューです。代わりに、強調表示された「ビュー」は、子ビュー コントローラー (「アイテム ビュー コントローラー」) のビューです。

ここに画像の説明を入力

コンテナー コントローラーは、追加の IBOutlet を介して子インスタンスも保持します。

ありがとう


更新 1:コンテナー コントローラーの viewDidLoad で親子関係を手動で設定すると、すべての回転メソッドが子に正しく転送されます。

しかし、IBを使用してすべてを行いたいので、これが正しい方法であるかどうかはよくわかりません。


更新 2:オブジェクト ライブラリで「コンテナー ビュー」を使用するためのヒントをくれた @micantox に感謝します。xib ファイルをストーリーボードに変換したところ、子ビュー コントローラーが親に追加されたので、その必要はありません。 addChildViewController を使用してコードから手動で追加すると、回転メソッドが期待どおりに転送されます。
「コンテナ ビュー」は基本的に埋め込みセグエを実装し、iOS 6 からのみサポートされます。
これは、ストーリーボードの更新されたスクリーンショットです。

ここに画像の説明を入力

0 投票する
4 に答える
2139 参照

ios - Accessing another View Controller's IBOutlets Housed in a Container View

I have a Container View that holds 1 of 3 view controllers swapped out by 3 tabs (across the bottom).

Here's my Storyboard:

enter image description here

I'm taking this approach so that I can have custom tabs and a single Save button for all the fields in this big form.

How can I access the IBOutlets in those 3 child view controllers from inside my Entry Detail View Controller class?

Here's what I've done to try and access it in the parent.

#xA;

Then in my parent class (Entry Detail View Controller) I can't access the property:

#xA;

How do I access another view controller's IBOutlets when they are in a Container View? Hopefully I'm on the right track. Forgive me as I'm still quite new to Objective-C. :)

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

ios - カスタムクラスでセグエを埋め込む

こんにちは、私はIOSアプリ開発にかなり慣れていないので、多少の問題があります。ビューコントローラーを作成し、ビューコントローラーのコンテナー内にセグエとしてテーブルビューコントローラーを埋め込みました。

デフォルトでは、アプリをテストすると、Table View Controller が表示されます。ただし、テーブル ビュー コントローラーのカスタム クラスを追加すると、コンテナーに表示されません。

私は何が欠けていますか?

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

ios - コンテナ ビューとデータの受け渡し

ここに見られるように、コンテナ ビュー内に格納されている tableViewController にデータを渡すのに問題があります。
ここに画像の説明を入力
コンテキストについては、2 つのコンテナ ビューを含むビュー コントローラ自体が、 splitViewController の詳細ビュー。

まず第一に、コンテナビューを適切に使用していますか? この最初のタブの目的は、上部にいくつかのフィルター「設定」を表示することです。これは、プッシュ セグエを介して編集できます (したがって、ナビゲーション コントローラーです)。下部では、フィルター条件に基づいて tableView のデータが更新されます。この機能を実現するために 2 つのコンテナー ビューを使用するのは直感的に思えましたが、経験がほとんどなく、より良い方法があるかどうか、またはコンテナー ビューのユーティリティが見た目よりもニッチなものであるかどうかはわかりません。

元の質問に-この階層が理にかなっていると仮定すると、この特定のtableViewControllerにデータを渡すのに苦労しています。tabViewController には他に 2 つのタブがあり、どちらもコンテナー ビューを使用していないため、次のように appDelegate を使用してこれらのタブにデータを表示するために階層を正常にトラバースすることができました。

デリゲートを介して masterViewController0/1/2 のそれぞれにデータを割り当てるコードのスニペットはスキップしました。前述のように、タブ 2 と 3 が機能します。タブ 1 は実行時にプログラムを中断し、'[containerViewController childViewControllers]' が空の配列を返すために終了します。プログラム実行のこの時点でコンテナビューが初期化されていないのだろうか?しかし、正直なところわかりません。

私のクエリは特にコンテナー ビューとはあまり関係がなく、階層トラバーサルと関係があると思います。そのため、コンテナー ビューに関するドキュメントで解決策を調べても、実際にはあまり役に立ちませんでした。

ヒントをお寄せいただきありがとうございます。

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

ios - iOS で「コンテナ ビュー」を使用するには?

XCode: の UI コンポーネントに気付きましたContainer View

ここに画像の説明を入力

提供された説明に基づいて、それを利用して、アプリの再利用可能なコンポーネントをいくつかの異なる画面に表示したいと思います。基本的なチュートリアルやドキュメントをオンラインで探してみましたが、役に立つものは見つかりませんでした。

これを配線して利用する方法について誰かアドバイスしてもらえますか?現時点ではcontainer view、サイズが変更されていないように見えますが、これは問題です。これを有効にする方法に関するヒントもいただければ幸いです。

乾杯。

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

objective-c - transitionFromViewController の 3D アニメーション

で3Dアニメーションを作ってみた

UINavigationController "PushViewController" で 3D アニメーションを作成する 3D アニメーション Happen Throw

transitionFromViewController でこのコードを再利用しようとすると

そして、3Dアニメーションは起こりますが、toViewControllerはアニメーション後に消えます..誰でも私を助けることができますか??

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

ios - 子View Controllerのビューを親View Controllerのサブビューに追加します

tableViewController を containerViewController の子ビュー コントローラーとして追加したいと考えています (以下を参照)。Apple のView Controller Programming Guideによると、containerViewController 内の次のコード行でこれを実現できます。

実際、それはうまくいきます。問題は、tableViewController のビューを containerViewController のルート ビューのサブビューとして追加したくないことです。代わりに、containerViewController のルート ビューのサブビューである containerView (画像を参照) のサブビューとして追加したいと考えています。そこで、上記のコードを次のように変更しました。

アプリを起動すると、次のエラーですぐにクラッシュします。

キャッチされない例外「UIViewControllerHierarchyInconsistency」が原因でアプリを終了しています。理由:「子ビュー コントローラー: 親ビュー コントローラーが必要ですが、実際の親は:」です。

ここで何が問題なのですか?childViewController のビューをその containerViewController の特定のサブビューに追加することはできません? または、View Controller階層でエラーなしでこれを達成するにはどうすればよいですか?

containerViewController

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

ios - iOS Scroll View、Container View - 自動レイアウトの問題

ストーリーボードと自動レイアウトを使用しています。UIScrollView に Container View があります。コンテナー ビューを使用すると、ストーリーボードに長い (320、1000) ビューをレイアウトできます。UIScrollView のコンテンツ サイズを (320,1000) に設定しました。
ContainerView の次の制約を ScrollView に固定しました。
Width Equals: 320
Height Equals: 1,000
Top Space to: Superview
Align Center X to: Superview

Xcode は、追加の制約を追加することを主張します。これは、Superview Equals: -432 に Bottom Space を追加します。この制約を削除することはできません! これが以下の問題に影響するかどうかはわかりません。

iPhone 5 とシミュレーターの 4
インチ画面ではすべて正常に動作します。シミュレーターと iPhone4S の 3.5 インチ画面でテストすると、問題が発生します。スクロールするコンテンツのサイズが (320, 568) に制限され、ContainerView の下部セクションが失われます。

これが 3.5 インチの画面で機能しない理由を誰かが理解するのを手伝ってくれますか?