私は一連の 3 つの UIWebViews を並べて配置し、それぞれのサイズを全画面表示にしています。
それらの 1 つは「現在」、1 つは「次」、最後は「前」です。現在、それぞれにテスト データが入力されています (「テスト 1」「テスト 2」「テスト 3」という適切な名前が付けられています)。長期的には、対処する項目が 3 つ以上あります。
スワイプすると、シバン全体が左または右に「回転」し、サイクル内の次/前のアイテムが表示されます。私が知る限り、ローテーションのコードは正しく機能します。現在のテイクは前のフレーム、前のテイクは次のフレーム、次のテイクは現在のフレームになります。次に、ポインタを調整して、current が next (現在は current として配置されている) を指すようにします。実際よりも複雑に聞こえます。
//code to animate this process properly ommited
previous.hidden=1
CGrect tempFrame=current.frame;
current.frame=previous.frame;
previous.frame=next.frame;
next.frame=tempFrame;
previous.hidden=0
//Adjust the actual pointers so they accurately describe their current positions
UIWebView *temp=current;
current=previous;
previous=next;
next=current;
私の唯一の問題は、「空白」の特定の直接スライドで 2 つ以上移動すると Web ビューが表示されることです。EG を右にスワイプすると、テスト 1 からテスト 2 に移動します。もう一度右にスワイプすると、空白の画面が表示されます。フレームはすべて正しく、Web ビューは正しく配置されていますが、コンテンツは空白です。
紛らわしいのは、反対方向に 1 回スワイプしてから戻すと、正しく表示されることです。(たとえば、右に 3 回スワイプすると空白になります。左にスワイプしてから右にスワイプすると、「正しい」画面が表示されます。)
これを引き起こしている可能性のあるアイデアはありますか? 次のステップ (「実際のデータ」では、スライドさせたときに適切なアイテムが読み込まれる「実際のデータ」) に進むと、現在の問題が消えてしまうのではないかと思いますが、この問題を理解したいと思います。
編集:
部分的に、表示されるべきではないパネルを「非表示」にするために、問題を追跡することができました。それを過ぎると、私はまだ何が起こっているのかわかりません。