2016-12-01 23 views
0

私は画像ビューの配列を持っています。イメージビューの配列でイメージをタッチして非表示にするにはどうすればいいですか?

var imageViewArray = [UIImageView(image: UIImage())] 

私はforループを使用して、この配列にURLの画像を埋めます。

let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(StoryVC.imageTapped)) 
newImage.userInteractionEnabled = true 
newImage.addGestureRecognizer(tapGestureRecognizer) 

そして、私はあまりにもタグを追加しようとしたが、私は取得する方法を見つけ出すことができません:私はこれを試してみました0:私は、私はこれらのイメージのいずれかをタッチすると、それは隠されたまたはアルファになるようにそれを作りたいです送り主。私は画像を隠す機能と、隠す画像を知ることができる必要があります。それは私が苦労している部分です。前もって感謝します。

答えて

1

セレクタのパラメータにUITapGestureRecognizerオブジェクトがあり、タップされたビューを表示するプロパティviewがあります。

let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.imageTapped(_:))) 

func imageTapped(_ sender: UITapGestureRecognizer) { 
    guard let tappedImage = sender.view else { return } 
} 
0

セレクタは、クラス内の関数である必要があります。ここでは例を示します。また

// Setting up the tapGestureRecognizers 
let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(pressed:)) 
newImage.userInteractionEnabled = true 
newImage.addGestureRecognizer(tapGestureRecognizer) 

// The function that handles the tap event 
func pressed(sender: UIImageView!) { 
    if sender.alpha == 0{ 
     sender.alpha = 1 
    } 
    else{ 
     self.alpha = 0 
    } 
} 

私の構文を再確認してください、私はしばしばスウィフトと書いていないので、いくつかの小さな誤差がある場合がございます。