プログラムでツールチップボックスを作成しようとしています。私がしようとしているのは、そのコンテナビューの中に親ビューのサイズに等しいコンテナビュー(「ツールチップクラス」)を作成することです。私はツールチップビューを追加しています。その中で私はターゲットを追加するUIButtonを追加しています。私のコードスニペット:すぐにUIButtonでaddTargetが呼び出されない
let container: UIView = UIView()
let tooltipView: UIView = UIView()
var closeButton: UIButton = UIButton()
container.frame = view.frame
container.center = view.center
container.backgroundColor = UIColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 0.6)
tooltipView.frame = CGRectMake(40, 40, container.frame.size.width - 80, container.frame.size.height - 80)
tooltipView.backgroundColor = UIColor.whiteColor()
tooltipView.layer.cornerRadius = 10.0
追加ボタン:
closeButton = UIButton(type: .Custom)
closeButton.imageView?.contentMode = .ScaleAspectFit
closeButton.frame = CGRectMake(tooltipView.frame.size.width - 45, 0, 45, 45)
closeButton.setBackgroundImage(UIImage(named: "close.png"), forState: .Normal)
closeButton.addTarget(self, action: "closeTooltip", forControlEvents: UIControlEvents.TouchUpInside)
機能:私は別のファイルにメソッドのコードを実装していると私は、これはツールチップメソッドを作成する呼び出しています
func closeTooltip() {
print("action")
// container.removeFromSuperview()
}
メインビューコントローラークラスから。私は "userInteractionEnabled = true"を追加するなど、複数のソリューションを試しましたが、うまくいきませんでした。
他のクラス( "ViewController")の中でこの全体のツールチップメソッドを呼び出すので、私は自分自身を渡しているので、ツールチップクラスで言及されたターゲットが問題になるかもしれないと思いました。だから、単に "ViewController"クラスに同じメソッドを追加してテストします。しかしそれも機能しませんでした。
私がここで紛失しているところを教えてください。
おかげであなたが示したものから推測する
現在使用しているスウィフトバージョンを指定できますか? –
@Nirav swift v2.0 – codejunkie
表示されているナビゲーションバーはありますか? –