Web フィード (JSON) から HTML コンテンツを取得するアプリを構築しています。ページの長さは、1 行から数百行までさまざまです。UIWebView は完全にスクロールできますが、追加のメニュー項目を表示するには、UIWebView の下に UITableView が必要です。これは、UIWebView だけでなく、ビュー全体をスクロールする必要があることを意味します。これは、UIWebView がまったくスクロールしてはならず、コンテンツに合わせてスケーリングする必要があることも意味します。
UIImageView はヘッダー、UIWebView はコンテンツ、UITableView はフッター メニューです。隠しボタンは、それ自体へのセグエを作成するためにあります。
このコードで UIWebView のサイズを変更します。
-(void)webViewDidFinishLoad:(UIWebView *)webView{
WebView.frame = CGRectMake(WebView.frame.origin.x, WebView.frame.origin.y, WebView.frame.width, [WebView sizeThatFits:CGSizeZero].height);
}
これは UIWebView で機能し、正しくサイズ変更されます。ただし、UITableView はサイズ変更された UIWebView の上に表示され、より大きな UIWebView によって押し下げられることはまったくありません。
第 2 に、このビューにはそれ自体へのセグエ (内部参照を含む wiki 構造のようなもの) があり、これは魅力のように機能します。しかし、ページに戻ると、UIWebView は元のサイズのままになり、サイズが変更されません。セグエにより、アプリは UIWebView の新しいサイズを何らかの形で忘れてしまいます。
ご覧のとおり、私はこれに苦労しています。「相対的な位置付け」が必要ですが、すべてが静的で絶対的なものに見えます。しかし、私は iOS プログラミングの初心者であり、Web 開発者のように考えています。セグエが UIWebView の高さを覚えていないのはなぜですか? UITableView がプッシュダウンされないのはなぜですか? ここで何が欠けていますか?(私は何か大きなものを見逃しているに違いない?)