LoginSignup
0
1

More than 3 years have passed since last update.

【Swift】UITableViewでcellを長押しして画面遷移する

Last updated at Posted at 2021-01-19

はじめに

UITableViewでcell長押しによる、画面遷移の実装に少し詰まったので、
longPressGestureRecognizerを用いて画面遷移する方法を記載します。

実装方法

まずViewDidloadにてUILongPressGestureRecognizerの宣言を行います。

override func viewDidLoad() {
        super.viewDidLoad()

        // UILongPressGestureRecognizerの宣言
       let longPressRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(ViewController.longPress(longPressGestureRecognizer:)))

        // tableViewにrecognizerを設定
        self.view.addGestureRecognizer(longPressRecognizer)
        }

次にcellの長押しが実行された際の処理を記載します。

@objc func longPress(longPressGestureRecognizer: UILongPressGestureRecognizer) {
            // 長押しが開始されたら処理
        if longPressGestureRecognizer.state == UIGestureRecognizer.State.began {
            // peformSegueで遷移先へ移動
            performSegue(withIdentifier: "遷移先のid", sender: self)
        }
    }

参考

UIGestureRecognizerについてはこちらの記事を参考にしました。
UIGestureRecognizerの種類

最後に

ご覧頂き有り難うございました!
ご指摘などありましたら、お気軽にコメントください。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1