tvOSには、画面に触れるように「触れる」という概念はありません。
UITapGestureRecognizerを使用している「タップ」扱いする公式の方法。それは、アイテムがフォーカス状態にあるときにユーザがリモートをタップ/クリックするときです。
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
if let cell = collectionView.dequeueReusableCellWithReuseIdentifier("MovieCell", forIndexPath: indexPath) as? MovieCell {
let movie = movies[indexPath.row]
cell.configureCell(movie)
if cell.gestureRecognizers?.count == nil {
let tap = UITapGestureRecognizer(target: self, action: "tapped:")
tap.allowedPressTypes = [NSNumber(integer: UIPressType.Select.rawValue)]
cell.addGestureRecognizer(tap)
}
return cell
} else {
return MovieCell()
}
}
func tapped(gesture: UITapGestureRecognizer) {
if let cell = gesture.view as? MovieCell {
//Load the next view controller and pass in the movie
print("Tap detected...")
}
}
あなたは、ハンドラ関数に渡されますUITapGestureRecognizerからタップの位置をつかむことができます。ここでは
は、私がUICollectionViewでの作業にそれをやっている方法です。 https://www.youtube.com/watch?v=XmLdEcq-QNI
あなたが正しいです!プレス開始、Cansel、終了 - すべて正常に動作します。タッチパネルにXとYの位置でタッチタイプが必要です! – user2545883
@ user2545883この問題を解決した場合は正しい答えとしてマークしてください。同じ問題を抱える他の人がこれが解決策であることがわかるようにしてください – Chris