나는이 tutorial을 추적하고 내 앱에 비디오 플레이어를 포함 시켰습니다.
하지만 문제는 컨트롤을 숨기고 화면 터치로 비디오를 닫을 수 있다는 것입니다.
해제 기능을 트리거하는 비디오 앞에 큰 투명 버튼을 넣으려고했지만 행운이 없었습니다. 비디오는 항상 버튼 위에있을 것이고 기능은 절대로 호출되지 않을 것입니다.
다른 방법이 있습니까?
ty화면상의 터치에서 MPMoviePlayerController를 닫습니다.
답변
방금 질문 한 또 다른 질문에서 solution을 발견했습니다. 일부 작은 수정 후
코드가 예상대로 작동했습니다. 다들 감사 해요.
UIGestureRecognizer 클래스를 사용해야합니다. 자세한 내용은 manual을 참조하십시오. 또는 this tutorial을 읽으십시오.
이 코드를 사용하십시오.
UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(stopPlayer)];
[self.view addGestureRecognizer:gestureRecognizer];
gestureRecognizer.cancelsTouchesInView = NO;
[gestureRecognizer release];
in view didload;
그리고
- (void) stopPlayer
에서
플레이어를 중지하고보기에서이 선수를 놓습니다.희망이 있으면 도움이됩니다.
는 ** 안녕하세요 저는
** # 재생하려는 경우 아래와 같이 사용하고있는 하위 뷰를 추가 할 수 AVPlayer를 당신에게 더 적합하게 생각하고 중지하려면 슈퍼 볼에서 제거 플레이어 목록을 만들기위한 수입 "AVFoundation/AVFoundation.h"
** :
NSString *path1 = [[NSBundle mainBundle] pathForResource:@"hello" ofType:@"mp4"];
AVPlayerItem *first = [AVPlayerItem playerItemWithURL:[NSURL fileURLWithPath:path1]];
player= [AVPlayer playerWithPlayerItem:first];
[self.playerView setPlayer:player];
[player play];
** 당신은 그것에 playerview에있는 UIView을해야 :
(id)initWithFrame:(CGRect)frame {self = [super initWithFrame:frame];
if (self) {
// Initialization code.
}
return self;
}
+ (Class)layerClass {
return [AVPlayerLayer class];
}
-(AVPlayer*)player {
return [(AVPlayerLayer *)[self layer] player];
}
-(void)setPlayer:(AVPlayer *)player {
[(AVPlayerLayer *)[self layer] setPlayer:player];
}
내가 그것을 시도하게해라. ... – astazed
did not는 일한다. .. 누군가 나를 도와 줄 수있다. 나는 코드 블라인드가되었다 ... – astazed
friend .. 위 코드에서 하나의 uiview를 만들고 그 이름 플레이어에게 두 번째 코드를 보여 주어야한다. 그 후 거기에 당신의 vedio를 표시하고자하는 주요보기에서, 그것은 첫 번째 코드 위에 올려 놓은로드가 vedio를 플레이하고 vedio를 멈추기 위해 superview에서 제거하기 위해 [self.view addsubview playerview] 위에 놓인 것입니다. – sinh99
PlayerViewControll .H
#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
@interface PlayerView : UIView UILabel *pageNumberLabel;
int pageNumber;
}
@property (nonatomic, retain) AVPlayer *player;
- (id)initWithPageNumber:(int)page;
PlayerView하는 .m
#import "PlayerView.h"
@implementation PlayerView
- (id)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {}
return self;
}
+ (Class)layerClass {
return [AVPlayerLayer class];
}
- (AVPlayer*)player {
return [(AVPlayerLayer *)[self layer] player];
}
- (void)setPlayer:(AVPlayer *)player {
[(AVPlayerLayer *)[self layer] setPlayer:player];
}
MainViewControll .H
#import <AVFoundation/AVFoundation.h>
#import "PlayerView.h"
@interface MainViewController : UIViewController {
IBOutlet PlayerView *playerView;
NSString *url;
AVPlayer *player;
NSMutableArray *arrIteam;
}
@property(nonatomic,retain) NSMutableArray *arrIteam;
@property (nonatomic, retain) AVPlayer *player;
@property(nonatomic ,retain)IBOutlet PlayerView *playerView;
PlayerView.M
#import "MainViewController.h"
#import <QuartzCore/QuartzCore.h>
@implementation MainViewController
@synthesize player,playerView,arrIteam;
- (void)viewDidLoad {
NSString *path1 = [[NSBundle mainBundle] pathForResource:@"hello" ofType:@"mp4"];
AVPlayerItem *first = [AVPlayerItem playerItemWithURL:[NSURL fileURLWithPath:path1]];
arrIteam = [[NSMutableArray alloc] initWithObjects:first,second, third,fourth,nil];
player=[AVPlayer playerWithPlayerItem:[arrIteam objectAtIndex:i]];
[self.playerView setPlayer:player];
[player play];
[super viewDidLoad];
}
- 1. 화면상의 툴팁
- 2. MPMoviePlayerController를 반대로합니다.
- 3. 화면상의 위치에 청취자 추가하기
- 4. 비디오 재생 내가 영화를 재생하기 MPMoviePlayerController를 사용하고 3G
- 5. WPF : 터치에서 이미지 지정하기
- 6. 코코아 터치에서 컨트롤러보기
- 7. 코코아 터치에서 이미지보기 애니메이션하기
- 8. 코코아 터치에서 UIView 회전
- 9. 터치에서 팬 요소 - jQuery
- 10. 모든 UIView 터치에서 SIGABRT
- 11. 화면상의 포인트 좌표를 찾으 시나요?
- 12. MPMoviePlayerController를 사용자 정의하는 방법은 무엇입니까?
- 13. 2 개의보기에서 MPMoviePlayerController를 사용하는 iphone
- 14. MPMoviePlayerController를 사용하는 여러 비디오 화면
- 15. 새로운 비디오가로드되는 동안 MPMoviePlayerController를 숨기기
- 16. ScopeGuard가 닫습니다
- 17. 코코아 터치에서 순수한 톤 재생
- 18. 우리는 코코아 터치에서 NSThreads를 사용해야합니까?
- 19. 화면상의 픽셀 크기를 조정하는 방법은 무엇입니까?
- 20. 화면상의 텍스트를위한 OCR (Optical Character Recognition)
- 21. cocos2d 화면상의 사용자가 접촉하는 위치를 결정합니다.
- 22. 현재 위치가 화면상의 좌표로 거짓으로 표시됩니다.
- 23. UITextField가 화면상의 키보드 프레스에 응답하지 않습니까?
- 24. 화면상의 특정 개체에 제스처가 발생하는 경우를 들음
- 25. 마우스 감지 Java로 화면상의 아무 곳이나 클릭하십시오
- 26. 화면상의 키보드 뒤에서 텍스트 숨기기 편집
- 27. iPhone MPMoviePlayerController를 멈추는 방법이 결국 닫힙니 까?
- 28. MPMoviePlayerController를 사용하여 오디오 스트림을 파일로 저장
- 29. 오류 MPMoviePlayerController를 사용하여 서버에서 비디오 재생
- 30. MPMoviePlayerController를 사용하여 동영상을 재생하는 동안 상태를 숨기기
이 시뮬레이터에서 작동합니까? 나는 아무 결과도없이 그것을 시도했다. – astazed