2

UIView含むクラスがありますUILabel。に を追加しましたUITapGestureRecognizerが、 のタップで新しい を開くためUILabelに を実行したいと考えています。授業で使えないのが難点。performSegueUIViewControllerUILabelperformSegueUIView

クラスで使用performSegueするのを手伝ってくれる人はいますか?UIView

ラベルにタップジェスチャを追加しました。

nameLabel.isUserInteractionEnabled = true

let tap = UITapGestureRecognizer(target: self, action: #selector(tapFunction))  
tap.numberOfTapsRequired = 1
tap.numberOfTouchesRequired = 1
tap.isEnabled = true
nameLabel.addGestureRecognizer(tap)

今私のtapFunctionで、

func tapFunction(sender:UITapGestureRecognizer) {
    print("tap working")
    self.performSegue(withIdentifier: "memberSegue", sender: self)
}

しかし、私はエラーが発生します:

「タイプ UIViewController の値にはメンバー performSegue がありません」

それはUIViewクラスです。

4

5 に答える 5

0

セグエではなく、そのタップ ジェスチャにアクションを追加することをお勧めします。

TapRecognizer.addTarget(self, action: #selector(YourFunc))

サンプル機能:

func YourFunc(){                  
        let storyBoardHome = UIStoryboard(name: "", bundle: nil)        
     let memberController = storyBoardHome.instantiateViewController(withIdentifier: "") 
           self.navigationController?.pushViewController(memberController, animated: true)
                }

これを参照してください:https://stackoverflow.com/a/26366366/6818278

于 2017-02-23T07:13:21.727 に答える