問題タブ [childviewcontroller]

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

ios - iOSの子ViewControllerでタッチイベントを検出する方法

親View Controllerに子View Controllerを追加するためにコンテナ船の概念を使用したiPhone用のサイドビューのようなメニューを作成しました。ユーザーがナビゲーションバーのメニューボタンをタップすると、子View Controllerのフレームを変更して、明らかにするメニューのようにアニメーション化し、子View Controllerがフレームの半分を右に切り取るようにします。

今私の問題は、ユーザーが子View Controllerの任意の部分をタップするたびに、子View Controllerでタッチイベントが発生したことを親View Controllerに通知して、親View Controllerが子View Controllerのフレームをリセットしてアニメーション化できるようにすることです半分明らかにされたメニューを閉じるように。

タップ ジェスチャを使用し、それを子ビュー コントローラ サブビューのすべての子ビューに追加しました。したがって、サブビューのいずれかでジェスチャをタップすると、タッチイベントについて親ビューコントローラーに通知されます。

タッチ イベントは、子ビュー コントローラーのメイン ビューでは正常に機能しますが、どのボタンをタッチしても TAP イベントが認識されません。

どこを間違えているのかわからない。子View Controllerのタッチについて親View Controllerに通知する方法を教えてください。前もって感謝します。

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

ios - childviewcontroller を削除すると、parentviewcontroller が再提示されたときに、parentviewcontroller のジェスチャーが無効になります

iOS で childviewcontroller を追加してから削除すると、重複するすべてのジェスチャが無効になります。

たとえば、parentviewcontroller には「ロングタップ」ジェスチャがあり、childviewcontroller には「ロングタップ」ジェスチャがあります。

親ビューのロングタップ ジェスチャが機能します。

次に、addchildviewcontroller を実行すると、VC のロングタップ ジェスチャが機能します。

次に、removeFromParentViewController を呼び出します

また、ロングタップ ジェスチャに応答していた元のビュー コントローラのビューでは、ジェスチャが無効になっています。

(すべてのジェスチャを循環して、再度「有効化」することができます-私の質問は、子ビューコントローラーを追加してから削除すると、ロングタップジェスチャが無効になるのはなぜですか-私はすべてを標準で行っています.

それから

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

objective-c - ルートView Controllerの子View Controllerはルートの上にあります

一見単純な問題ですが、解決策が見つかりません。ルート ビュー コントローラーである UIViewController のサブクラスと、呼び出されたときに子ビュー コントローラーとしてロードする 10 個の他の UIViewcontrollers があります (一度に 1 つずつ、一度に 10 個すべてを画面に表示するわけではありません)。

ルート コントローラにはいくつかのボタンがあり、そのアクションによってそれぞれのコードが呼び出され、子ビュー コントローラが表示されます。ルート ビュー コントローラーは nib によって最初に読み込まれ、page01ViewController を最初の子としてインスタンス化したいと考えています。しかし、次のコードを呼び出すたびに、子ビュー コントローラーが rootViewController の上にオーバーレイされ、ルート コントローラーのすべてのコントロール ボタンが非表示になります!

私の問題はここで尋ねられたものと似ていますが、解決策は特定されていません:

子ビュー コントローラーからコンテナーに戻る

私が見つけたすべてのチュートリアルには同じ設定があります。新しい VC を作成し、それを childView として自分自身に追加し、それをサブビューとしてルート ビューに追加しますが、機能しません。

誰でもこれを行う正しい方法を知っていますか?

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

ios - 希望の向きにchildViewControllerを追加する方法

私はポートレートモードでparentViewControllerを持っていて、横向きモードでchildViewController(MPMoviePlaycontrollerのサブクラスです)を追加したいです。これは私が使用しているコードです:

ParentViewController.m 内

ChildViewController.m 内

問題は、ChildViewController がまだ縦長モードで表示されていることです。

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

ios - テーブルセルのchildViewControllersにアクセスするにはどうすればよいですか

StoryBoard の静的テーブル セルで containerView を使用しました。

これらには何もありませんでした。カスタム UIViewCell を使用したくありません。

TableViewController でアクセスするにはどうすればよいですか?

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

ios - iOS 7 のステータス バーを一時的に UIView で覆う方法はありますか?

ここには少し奇妙なシナリオがあり、助けを見つけようとしていますが、解決策は問題を実際に解決するのではなく、悪化させます.

水平スクロール ビュー内に 3 つの子コントローラー ビューを持つコンテナー viewController があります。デフォルトの子コントローラー ビューは、カスタム カメラ ページです。今、これが私が達成したいことです。カメラ ページでステータス バーを非表示にしたいのですが、他の 2 つのビュー (別の 2 つの子コントローラー) にはステータス バーを表示したいと考えています。

左の子コントローラーからカメラ ページにドラッグするか、右の子コントローラーからカメラ ページにドラッグすると、カメラ ページ ビューがステータス バーに重なって表示されます。

これが行われているのを私が見た唯一の場所はSnapchatで、私はそれを理解しようと数時間試みてきましたが、解決策を思いつくことができないようです. どんな助けでも大歓迎です。

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

ios - 子ビュー コントローラー内のナビゲーション スタック

私はUINavigationControllerそのようにコンテナビューの中に入れています(これはフルスクリーンUIViewControllerサブクラスにあります):

これで期待どおりに動作littleViewControllerし、上部にナビゲーション バーがあると思われる四角形に表示されます。littleViewController内部での相互作用の結果として、このようなことが起こるとしましょう

残念ながら、この後続のコントローラーはフルスクリーンで表示されてしまいます。今、私は内部popoverControllersでこれを正確に実行splitViewControllersしましたが、それらは私が望んでいたとおりに動作しました。ナビゲーション スタックは、それが開始された小さな長方形内に構築されます。

任意の CGRect でコンテナー内にナビゲーション スタックを構築するにはどうすればよいですか?