2012-10-01 17 views
8

başlayan bu gibi bakarak, bir kara kutu olarak başlar (video siyah başlar çünkü olarak tutunuz): MPMoviePlayerController benim yarattığım <code>MPMoviePlayerController</code> örneği benim app görüntüyü

enter image description here

Ancak öngören edildi kullanıcı dostu aşağıdaki örnekte olduğu gibi, küçük bir resim ile, böyle bir şey daha: bir maketini var

enter image description here

benim yarattığım ama cameral videolar Mesajlar uygulamasında gönderilen videolar ve videolar o oynatma okunu kullanır. Stok iOS oynatma okunu kullanmak için hangi sınıfa geçmem gerekiyor?

Bu MPMoviePlayerController ait thumbnailImageAtTime:timeOption: yöntemi için bir şey gibi görünüyor

cevap

6

, sizin için bir küçük resim almak ve videonun üstünde bir UIImageView görüntülemek için bu görüntüyü kullanmak istediğiniz sürede geçmelidir.

Küçük resminizi aldıktan sonra, bir UIImageView oluşturun ve görüntüyü küçük resme ayarlayın ve userInteractionsEnabled değerini YES olarak ayarladığınızdan emin olun. Film oynatıcısını kapatmak için bu görüntü çerçevesinin çerçevesini ayarladığınızdan emin olun.

Artık bir görüntüyü tetikleyecek olan bu görüntü görünümünde bir UITapGestureRecognizer oluşturabilirsiniz. Bu yöntem daha sonra MPMoviePlayerController nesnesinin play yöntemini çağırır.

-(void)viewDidLoad{ 
    [...] 

    UIImage *thumbnail = [moviePlayer thumbnailImageAtTime:5.0 
               timeOption:MPMovieTimeOptionNearestKeyFrame]; 

    UIImageView *iv = [[UIImageView alloc] initWithImage:thumbnail]; 
    iv.userInteractionEnabled = YES; 
    iv.frame = moviePlayer.frame; 
    [self.view addSubview:iv]; 
    [iv release]; 

    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; 
    tap.numberOfTapsRequired = 1; 
    [iv addGestureRecognizer:tap]; 
    [tap release]; 

    [...] 
} 


- (void)handleTap:(UITapGestureRecognizer *)gesture{ 
    iv.hidden = YES; 
    [moviePlayer play]; 
} 

Eğer oynat düğmesi daha sonra Photoshop bir oynat düğmesi yapmak, küçük resim görünümü üstündeki bu eklenti, o görüntü görünümüne jest tanıyıcı takmak ve her iki resim görünümlerini gizlemek emin olun isterseniz lütfen unutmayın videonuzu oynatmaya başladığında.

Görüntüyü oynatma görüntüsüne ayarlanmışsa UIButton veya UIGestureRecognizer'a gerek duymazsınız.

+0

Kodunda bile eklemek çok basittir. UIImageView' üzerinde gösterilen mi? Ayrıca, bahsettiğiniz gibi kullanıcı etkileşimlerini etkinleştirmek için 'UIImageView' nasıl ayarlanır? – inorganik

+0

Evet, senin durumunda öyle. Önizleme resminiz aynı değil. – Daniel

+0

Hala sorumu cevaplamadınız. Bir örnek verdiğim oku nasıl bulabilirim, ne de "kullanıcı etkileşimlerini etkinleştirmek için resim görünümünü nasıl ayarlayabileceğinizi" belirttiniz. Tüm küçük resim yöntemi bir görüntü yakalar, bende bir görüntü var, sorun değil. Lütfen tekrar deneyin. – inorganik

0

Sadece bir UIButton kullanma hakkında ne düşünüyorsunuz? Güzel bir arka plan resmine sahip olabilir, üzerine tıklayabilir ve film oynatıcının arkasına taşıyabilir veya düğmeyi bile kaldırabilirsiniz.

İlgili konular