0

みなさん、質問があります。テーブルビューでスワイプジェスチャ機能を実装するにはどうすればよいですか?私のプロジェクトには多くのチャプターがあり、各チャプターはテーブルビューセルに読み込まれます。ボタンをクリックして次のチャプターに移動し、テーブルビューのフッターに移動し、テーブルビューのヘッダーにある前のページのボタンに移動します。すべてがうまくいき、ユーザーがボタンをタップするとデータが再読み込みされます。しかし、ユーザーが右にスワイプすると、テーブルビューのセルをスワイプするときにこの機能が必要になります。次のチャプターをロードし、その逆も同様です。次のチャプターのコードは次のとおりです。

-(IBAction)_clickbtntablenextchapter:(id)sender
{
    delegate.selectedChapter = [NSString stringWithFormat:@"%d",[delegate.selectedChapter intValue] + 1];
    [delegate reloadVerses];
    [self resetReadViewToVerse:1]; 
}
-(IBAction)_clickbtntableprvchapter:(id)sender
{
    delegate.selectedChapter = [NSString stringWithFormat:@"%d",[delegate.selectedChapter intValue] - 1];
    [delegate reloadVerses];
    [self resetReadViewToVerse:1]; 
}

スワイプ機能で実装したいだけです。前もって感謝します。編集

-(void) handleSwipeGesture:(UISwipeGestureRecognizer*)recognizer {
    // do whatever you need to do ...
    delegate.selectedChapter = [NSString stringWithFormat:@"%d",[delegate.selectedChapter intValue] + 1];
    [delegate reloadVerses];
    [self resetReadViewToVerse:1]; 
}
-(void) handleSwipeGestureleft:(UISwipeGestureRecognizer*)recognizer {
    // do whatever you need to do ...
    delegate.selectedChapter = [NSString stringWithFormat:@"%d",[delegate.selectedChapter intValue] - 1];
    [delegate reloadVerses];
    [self resetReadViewToVerse:1]; 
} 
this is gesture code and my button code is ,in button it works perfect.
-(IBAction)_clickbtntablenext:(id)sender
{
    delegate.selectedChapter = [NSString stringWithFormat:@"%d",[delegate.selectedChapter intValue] + 1];
    [delegate reloadVerses];
    [self resetReadViewToVerse:1]; 
}
-(IBAction)_clickbtntableprevious:(id)sender
{
    delegate.selectedChapter = [NSString stringWithFormat:@"%d",[delegate.selectedChapter intValue] - 1];
    [delegate reloadVerses];
    [self resetReadViewToVerse:1]; 
}
4

1 に答える 1

4

スワイプ動作は編集モードではデフォルトです。編集モードでの行の挿入と削除を確認する必要があります。

独自の動作が必要な場合は、UISwipeGestureRecognizerを使用してスワイプを検出できます。

編集:

レコナイザーを作成します。

UISwipeGestureRecognizer *swipeGesture = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeGesture:)];
swipeGesture.direction = UISwipeGestureRecognizerDirectionRight // or whatever
[cell addGestureRecognizer:swipeGesture];
[swipeGesture release];

ターゲットのコールバックを実装します。

-(void) handleSwipeGesture:(UISwipeGestureRecognizer*)recognizer {
    // do whatever you need to do ...
}
于 2011-11-10T09:45:27.653 に答える