4

非常に基本的です。理解できない。テーブルがロードされ、編集が切り替えられたときにが呼び出されますcanEditが、 は呼び出されませんcanMove。私は何を間違っていますか?

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
  NSLog(@"canEdit=%d", indexPath.row);  
  // output is as expected, "canEdit" for each row
  return (indexPath.section == 1) ? YES : NO;
}

- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
{
  NSLog(@"canMove=%d", indexPath.row);
  // nothing. No output
  return (indexPath.section == 1) ? YES : NO;
}

ありがとう!

4

1 に答える 1

13

申し訳ありませんが、問題はここで回答されています:

並べ替えコントロールがテーブル ビューに表示されない

また、実装する必要があります

- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath 

スウィフト

func tableView(_ tableView: UITableView, canMoveRowAt indexPath: IndexPath) -> Bool {
    return true
}

func tableView(_ tableView: UITableView, moveRowAt sourceIndexPath: IndexPath, to destinationIndexPath: IndexPath) {
    //code
}
于 2013-01-19T14:13:50.443 に答える