2017-02-06 22 views
1

Swift 3.0を使用してテーブルのセル全体をスワイプする機能を実装したいと思います。 iOS 10のMailアプリでスワイプして削除する方法と同じように。Swift - 静的なUITableViewで削除するスワイプ(削除ボタンなし)

重要な点として、削除ボタンを表示して削除を処理することを意味するわけではありません。ユーザーが画面の右から左にスワイプして削除することができます。 (tableViewは動的ではなく静的であることにも注意してください)

これに対してUISwipleGestureRecognizerを実装する必要がありますか?

+0

はいあなたはtableviewのperticularセルにswipegestureを使用できます –

答えて

0

これらの機能を追加し、必要に応じて変更するだけです。

override func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) { 
     } 

この

override func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? { 

     let example1 = UITableViewRowAction(style: .normal, title: "example1") { (action: UITableViewRowAction!, indexPath: IndexPath!) -> Void in 
      // run your desired action 
     } 

     example1.backgroundColor = .white 

     let example2 = UITableViewRowAction(style: .normal, title: "example2") { (action: UITableViewRowAction!, indexPath: IndexPath!) -> Void in 
      // run your desired action 
     } 

     example2.backgroundColor = .green 

     let example3 = UITableViewRowAction(style: .normal, title: "example3") { (action: UITableViewRowAction!, indexPath: IndexPath!) -> Void in 
      // run your desired action 
     } 

     example3.backgroundColor = .orange 

     return [example1, example2, example3] 

    } 
+0

これは質問の答えではありません – Ragul

0

あなたが動的コンテンツを含むテーブルの場合と同じようにあなたはUITableViewDataSource方法tableView(_:commit:forRowAt:)tableView(_:canEditRowAt:)を実装することができます。

ただし、静的コンテンツの表では、行の挿入や削除はできません。テーブルが静的であれば、行は残っているはずです。あなたができることは削除されたステータスを反映するためにスワイプされた行を更新することです。

例:私のアプリでは、ビルトインのスワイプジェスチャーを使用して設定をリセットしています。ユーザーが行(静的コンテンツ)をスワイプし、削除ボタンをタップすると、そのセル内のラベルと画像がアプリによって設定されます。行は削除されず、通常は静的なセル(コンセントを割り当て、他の静的コンテンツのようにアクセスする)と同様に更新されます。

編集: はまた、完全なスワイプジェスチャー、あなた自身の認識エンジンをインストールする必要はありませんができるようにiOSの中でそれtrueに11セットのUISwipeActionsConfigurationクラスのperformsFirstActionWithFullSwipeプロパティをチェックしてください。

あなたはiOS 10 Mailについて言及しました。このプロパティはiOS 11の機能なので、AppleがiOS 10でそれを実行するかどうかはわかりません。また、iOS Mailには動的コンテンツの表がある可能性が非常に高いです。

関連する問題