Итак, у меня есть TableView
, что для каждой ячейки пользователь может удерживать просмотр видео/изображения. Удерживающая часть работает, но когда я отпускаю ее, она не возвращается к TableView
. Heres кода для представления вида с видео/изображениями:Удерживайте, чтобы посмотреть видео как snapchat in swift
func playVideo() {
// get path and url of movie
let path = NSBundle.mainBundle().pathForResource("static2", ofType:"mov")
println(path)
let url = NSURL.fileURLWithPath(path!)
var moviePlayer = MPViewController()//took out video handling right now so this is just basically a regular view controller
moviePlayer.navController = self.navigationController
// construct the views
moviePlayer.addGestRecognizer()
self.navigationController.pushViewController(moviePlayer, animated: true)
}
, а затем я этот жест распознаватель добавил к виду клетке:
let singleTap = UILongPressGestureRecognizer(target: self, action: Selector("tapped:"))
self.addGestureRecognizer(singleTap)
и вот «похлопал:» функция :
func tapped(gestureRecognizer:UIGestureRecognizer){
println("held down")
if gestureRecognizer.state == UIGestureRecognizerState.Began {
playVideo()
}
if gestureRecognizer.state == UIGestureRecognizerState.Ended {
println("hold ended")
self.navigationController.popViewControllerAnimated(true)
}
//playVideo()
}
по какой-то причине, когда я нажимаю контроллер вида на главный навигационный контроллер, я больше не получаю «удержание». Как я могу настроить это так, чтобы он работал точно так же, как snapchat?
Может быть, было бы лучше, чтобы представить СМИ с UIView вместо UIViewController? – LinusGeffarth
Я бы использовал навигационный контроллер, чтобы сделать это ... весь этот код находится в подклассе uitableviewcell – Tyler
О, это имеет смысл ... но все же вы можете просто создать 'UIView', заполняющий весь экран. Я не использую Snapchat, но я так думаю, что он там работает. – LinusGeffarth