問題タブ [uicontainerview]

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

objective-c - ストーリーボードを使用していくつかのサブビューの 1 つに UITableView を追加する方法

2 つの UIView を持つ 1 つの UIViewController があります。ナビゲーション バーでは、1 つのボタンを押すと UIView の 1 つが表示され、もう 1 つのボタンを押すと他の UIView が表示されます。ビューの 1 つに UITableView を配置したいと考えています。ただし、UITableView では、UIViewController が UITableViewDelegate と UITableViewDataSource を使用する必要があります。UTTableView を含む UIView (サブビュー) にこれを実装した後、テーブルを含まない他のビューのボタンをクリックすると、エラーが発生し、アプリケーションが鳴きます。

私の問題は、両方のサブビューに同じ UIViewController を使用しようとしているが、テーブルが含まれているのは 1 つだけであると想定しています (おそらく間違っています)。

質問 1) 上記のことは可能ですか? つまり、問題が発生した場合、何かが正しく接続されていませんでした。

そこで、2 つの個別の UIViewController を作成する道をたどりました。ビューごとに 1 つ。これが賢明なアプローチかどうかはわかりません。今、私はこれを行うための最良の方法についてアドバイスを探しています. よろしくお願いいたします。

ここに画像の説明を入力

私がやろうとしていることをより明確にするために。バーの最初のボタンがクリックされたときにピンクのビューがある場所に青いビューを配置し、2 番目のボタンがクリックされたときにピンクのビューがある場所に黄色のビューを配置します。基本的に、ピンク色のビューは表示されず、UtilityViewController 上にある必要さえない場合があります。

0 投票する
8 に答える
13810 参照

ios - UISearchBar がアクティブな場合、UITableView コンテンツがステータス バーに重なる

UISearchBar と UISearchDisplayController を備えた UITableViewController があります。これは、UINavigationController にある UIViewController の Container View 内に存在します。構造を説明するためにこの画像を作成しました。

ここに画像の説明を入力

これは実際にどのように見えるかです:

ここに画像の説明を入力

検索バーをタップすると、ナビゲーション バーを非表示にする必要があります。通常、これは単独で発生しますが、私の UITableViewController は Container View 内にあるため、その変更を自分で処理する必要があります。これがそのときの外観です。現時点では非表示になっていますが、ナビゲーション バーが白であるため、ステータス バーが白であることに注意してください。

ここに画像の説明を入力

検索テキストを入力し始めると、結果が表示されます。これらの結果を上にスクロールすると、検索バーの下を通過しますが、ステータス バーに重なってしまい、非常に見栄えが悪くなります。

ここに画像の説明を入力

Container View が関係していない場合、これはすべて意図したとおりに機能し、テーブル コンテンツはステータス バーの下を通過しますが、ContainerView が関係していると、テーブル テキストとステータス バーが衝突します。

テキストが通常のようにステータス バーの下を移動するようにするにはどうすればよいですか?

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

ios - コンテナ ビュー内に埋め込まれた tableviewcontroller にアクセスする方法

2 つの子サブビューを持つカスタム UIViewController "ProfileController" があります。最も重要なのは、UITableViewController を埋め込むコンテナーの子サブビューです。ユーザープロファイル情報を表示するために使用している「静的」セルを動的に構成できるように、「ProfileController」内から UITableViewController にアクセスするにはどうすればよいですか。

プロファイル画面の UI に追加のカスタマイズを追加できないため、スタンドアロンの UITableViewController を使用したくありませんでした。ありがとう!

...アップルの静的セルの実装がUITableViewControllerと密接に結合されていることがわかったので、ストーリーボード内の標準UITableViewの静的セルを設計できないのは残念です。残念です、確かに。

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

ios - コンテナー ビュー コントローラーを介して使用されているセルを確認する方法は?

現在、コントローラーに 3 つの静的セルReminderViewControllerを参照するコンテナー ビューがある次の設定があります。UITableViewControllerここに画像の説明を入力

この回答UISwitch以外に、ユーザーがセル内のいずれかを切り替えたときSetReminderControllerに通知され、それに応じて行動するようにする方法に関する他のリソースは見つかりませんでした。どうすればこれを達成できますか?ありがとう!

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

ios - 高さが制限されたコントローラーで scrollView のサイズを修正

画面の半分の高さに UITableViewController を含む Container ビューがあり、画面の下部に配置されています。

ここに画像の説明を入力

問題は次のとおりです。上向きに減速した後、境界外の行がtableViewの開始点(ロードされていた場所)に戻ると予想されますが、画面の上部境界の開始点で戻るのを止めます! tableView がフルハイトのときのように! したがって、私のサンプルの 3 行は灰色のビューの下に隠れています。(tableView のサイズがフルハイトの場合と同じ)。

下にスクロールすると行の位置が固定され、tableViewの開始点で行の移動が停止します!!

scrollView.contentSize.heightコンテナビューのサイズと同じではなく、画面の高さ(530)に等しいことがわかりました。でリセットしようとしましたscrollViewWillBeginDragging:scrollViewが、値が更新されましたが、問題は何も変わりません。

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

ios - UIViewController が Container View 内にあるかどうかを判断する

たとえば、モーダルに表示されている、UINavigationViewController 内にあるなどと比較して、UIViewController がコンテナー ビュー内にあるかどうかを検出することは可能ですか?

編集:この質問の理由を明確にするために:フォームシートとして表示されることもあれば、別のVC内(コンテナビュー内)の子VCとして表示されることもあります。VC が実際にどのように表示されるか (フォーム シートまたはコンテナー ビュー) を確認できるようにしたい。

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

view - プログラムによるコンテナー ビューのポップオーバー ビュー

iPad ビューに Container View を追加します。Xcode を追加すると、新しいビューが自動的に作成され、埋め込みセグエでメイン ビューに接続されます。コードでこの新しいビューをプログラムで呼び出そうとしましたが、これを行うことができません。このフォームをポップオーバーで表示する必要があります。

私は試します:

これは機能しますが、フルスクリーンで新しいビューを表示しますが、ポップオーバーで表示する必要があります。私は多くのことを試していますが、すべてうまくいきません(.

私はこれを試します:

ただし、例外 SIGABRT を受け取る

私はこれを試します:

例外 SIGABRT を受け取る

これを試して:

同じ SIGABRT

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

ios - コンテナ ビューがイメージ ビューを覆っている

デフォルトで imageView によって非表示にする必要がある containerView があります。起動時にイメージがコンテナを覆う必要があります。ただし、IB の階層化が正しく、コンテナの後に imageView が更新されたとしても、コンテナはまだ画像の前に表示されています。これが起こらないようにする方法はありますか?

IBの概要は次のとおりです。

ここに画像の説明を入力

これを最初に投稿したとき、私は画像ビューと、メイン ビュー内のビューの 3 つのボタンを持っていました。しかし、それ以来、私はそれが示されている方法に変更しました.

次のように、サブビューごとにアウトレットがあるとします: Container View-Container、Image View-backgroundImage、Buttons-item1、item2、item3。

ここに私が試したことのリストがあります:

  1. [self.view sendSubviewToBack: _Container];
  2. [self.view bringSubviewToFront: _item1];
  3. [self.view bringSubviewToFront: _item2];
  4. [self.view bringSubviewToFront: _item3];
  5. [self.view bringSubviewToFront: _backgroundImage];

ビューコントローラーの可視座標からコンテナービューを移動しようとしましたが、これもうまくいきませんでした。

また、View Controller の viewDidAppear メソッドは次のとおりです。

最初にコンテナ ビューを設定し、次にボタンとイメージ ビューの初期設定を行います。このメソッドの一番下は、サブビュー コマンドを配置した場所です。うまくいけば、これは役に立ちます。

}

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

ios - コンテナ ビューに埋め込まれた場合、nib からロードされたビューのサイズが正しく変更されない

さまざまなプロジェクトで再利用したい複雑なニブを持つビューコントローラー/ビューがいくつかあります。新しいプロジェクトでコンテナ ビュー コントローラを構築し、コンテナにビュー コントローラを埋め込むことで、これを実行しようとしています。私のプロジェクトのペン先からビューがロードされています。

私の元のプロジェクトはもっと複雑ですが、私が抱えている問題を説明するためにサンプル プロジェクトを作成しました。サンプル プロジェクトには、次に説明するクラスとファイルがあります。

1) CSMSketchView (.h および .m) -- ユーザーが画面に描画できるようにします

2) CSMSketchViewController (.h および .m) -- スケッチ ビューを制御し、元に戻す/やり直し/クリア ボタンを管理するために使用されます。

3) CSMSketchViewController.xib -- スケッチ ビューのレイアウト情報が含まれています。

xib ファイルでは、以下に示すように、元に戻す/やり直し/クリア ボタンがコンテナー ビューに配置され、その間に空のスペーサー ビューが配置されます。オレンジと黄色のボックスはスペーサー ビューで、右側の青はコンテナー ビューの端です。また、xib の左、右、および下にボタンを追加しました。これらのボタンを中央に配置し、ビューの端から 20 離すというオートレイアウトの制約があります。コンテナー ビューのボタンとビューの行をコンテナー ビューに固定する自動レイアウトの制約もありますが、スペーサー ビューの幅は変動できます。

xib ファイルのレイアウト

私のメイン ストーリーボードには、以下に示すように、コンテナー ビューに CSMSketchViewController が埋め込まれた 1 つのビューがあります。

ここに画像の説明を入力

プログラムを実行すると、ビューは次のようにレイアウトされます。

ここに画像の説明を入力

2 つの問題があります。ボタンを含むコンテナ ビューが適切に拡大されず、ビューの下部にあるはずのボタンがビューの上部にあります。私はいくつかの調査を行い、WWDC 2012 のいくつかのビデオを見て、CSMSketchView コントローラーが所有する CSMSketchView がコンテナー ビューに埋め込まれた後にサイズ変更されていないという結論に達しました。

私の考えでは、CSMSketchView がコンテナーに埋め込まれた後にフレームのサイズを変更するように指示するコードを 1 行または 2 行追加する必要があります。残念ながら、コードのどの行が適切であるか、またはコードを追加する場所がわかりません。

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

ios - コンテナー フレームは、viewDidLoad では正しくないサイズを返しますが、viewWillAppear では正しく返します

アプリケーションでコンテナ ビューを使用しています。

このコンテナのサイズは であると考えてください721*1024

メソッドを使用performSegueWithIdentifierしてコンテナ ビュー コントローラをプッシュします。viewDidLoad でビューのフレーム サイズを出力する768*1024と、同じビューのフレーム サイズが表示さ721*1024viewWillAppearます。

何がうまくいかないのですか?このコンテナー ビューにいくつかのサブビューを追加しようとしています。また、アプリケーションで自動サイズ変更を使用しましviewDidLoadviewDidLoad。私の主な質問は、コンテナー ビューのフレームが と で正しく表示されないのはなぜviewDidLoadですかviewWillAppear?