5

次のコードは簡単ですか?

テーブルビューがあり、ユーザーがセルを選択すると詳細ビューが読み込まれます。ユーザーが左右のスワイプでテーブルビュー内のアイテムを表すアイテム/詳細ビュー全体をナビゲートできるようにしたい.iPhoneのホーム画面などと同じように動作する.画面から消え、次の画面が表示されます)。

これが MobileRSS-APP に実装されているのを見たことがあるので、可能ですが、適切に実行する方法を理解するのに苦労しています。

100万前もってありがとう!私はまだココアタッチで自分の足を見つけようとしています...

4

2 に答える 2

2

iPhoneのホーム画面(スプリングボード)は、ページングが有効に設定されたスクロールビューで動作します。

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,self.view.frame.size.width, self.view.frame.size.height)];
[scrollView setPagingEnabled:YES];

次に、スワイプするアプリが2ページあるとします。スクロールビューのコンテンツサイズをビューの幅の2倍に設定します。

[scrollView setContentSize:CGSizeMake(self.view.frame.size.width*2, self.view.frame.size.height)];

そして、それはそれがどのように行われるかです。:)MobileRSS-APPでも同じかどうかはわかりません。

覚えておくべきこと:

  1. これは、テーブルビューが機能するデフォルトの方法ではありません。アプリがAppleによって拒否される可能性があります。テーブルビューは、クリックすることで機能するようになっています。

  2. touchsメソッドとナビゲーションコントローラーを使用したスクロールビューを使用せずに、機能を複製できる可能性があります。ビューでスワイプを検出する方法を説明する優れたチュートリアルは、次のとおりです。http: //www.dosomethinghere.com/2009/07/23/simple-swipe-detection-in-the-iphone-sdk/

NSLog(「右にスワイプ」)があるチュートリアルの最後の方法では[self.navigationController popViewControllerAnimated:YES]、ナビゲーションバーの「戻る」ボタンを押して複製する方法に置き換えることができます。

左にスワイプするために何ができるかわかりませんが.....テーブルビューでこれを実行したい場合は、テーブルビューがどれだけスクロールされたかを判断するためにいくつかの複雑な計算を行う必要があります。または、セル自体のタッチイベントをテストすることもできますが、それについては調査する必要があります。:)

于 2011-02-08T10:49:38.313 に答える
2

これは秘密ではありません。Apple は、実現したいことを正確に示すPageControlというサンプル コードを提供しています。

このアプリケーションは主に、UIScrollView のページング機能を使用して、コンテンツの異なるページ間を移動するためのメカニズムとして水平スクロールを使用する方法を示しています。

多くのアプリに実装しました。

于 2011-02-08T11:06:06.833 に答える