0

UIWebView と UITableView を含む iPhone アプリに UIView があります。

問題は、コンテンツの高さが非常に可変であるため、画面を次のように動作させたいということです。

  • UIWebView のすべてのコンテンツが表示されます (おそらく画面より大きくなります)。
  • ユーザーが Web ビューのコンテンツのスクロールを終了した後、テーブル ビューのコンテンツのスクロールを開始し、単一のスクロール可能なビューを形成します。

問題は、Web ビューとテーブル ビューの両方に独自のスクロール フィールドがあり、Apple のドキュメントには、私がやりたいことをしないように明確に指示されていることです。

重要: UIWebView または UITableView オブジェクトを UIScrollView オブジェクトに埋め込まないでください。これを行うと、2 つのオブジェクトのタッチ イベントが混同され、誤って処理される可能性があるため、予期しない動作が発生する可能性があります。

私がやりたいことをする方法はありますか、それともインターフェースを再考する必要がありますか?

4

2 に答える 2

2

tableView の tableHeaderView に WebView を追加し、TableHeaderView の高さを Web ビューの全体の高さに調整できます。この方法では、その上に WebView を表示する tableView のみがあり、一緒にスクロールします。

于 2013-10-17T22:02:37.560 に答える
1

Apple の警告にもかかわらず、これは可能です。私は実稼働アプリ用に自分でそれを行いましたが、うまくいきました。目の前にコードはありませんが、大まかに次のことを行いました。

1) Web ビューのコンテンツの高さを取得し、その高さに合わせて Web ビューのフレームを設定します。

2)テーブルビューについても同じことを行います

上記の 2 つの手順により、アプリを操作するときに内部スクロール ビューがコンテンツをスクロールしようとしなくなります。スクロールできるのは、外側のスクロール ビューだけです。

3) 最後に、外側のスクロール ビューのコンテンツ サイズを Web ビューの高さとテーブル ビューの高さの合計に設定します。

于 2013-10-17T22:04:34.470 に答える