MPMovieplayerController com um botão personalizado em sua barra de ferramentas
-
22-09-2019 - |
Pergunta
Você pode ter visto vídeo através do You Tube no iPhone.
O MPMoviePlayerController normal possui botões anteriores, Próximo e Play/Pausa.
You Tube - O jogador possui dois botões adicionais.
=> Adicione aos favoritos no lado esquerdo.
=> Envie um e -mail para este vídeo no lado direito.
Eu quero implementar o mesmo para o meu aplicativo.
Mas não tenho conseguido descobrir a propriedade ou métodos relacionados a implementá -lo.
Como eu preciso de botões nele?
- Quando o usuário está assistindo ao vídeo, não deve botões na tela.
- Quando o usuário toca em vídeo - uma barra de ferramentas vem no topo e no centro
- Uma barra de ferramentas central geralmente possui três botões, anterior - PRÓXIMO - PLAY/PAUSE
- Quero adicionar um botão ao lado do próximo botão e botão anterior.
Solução
Eu não acho que você possa modificar a interface de uma visualização fornecida pela Apple.
A abordagem geral seria reproduzir seu vídeo e, depois de terminar, mostre uma visão com os botões/ou opções desejados para o usuário.
Um exemplo disso pode ser visto com o aplicativo do YouTube no iPhone. Depois que o vídeo do YouTube é exibido, o usuário é enviado para uma exibição resumida com links para assistir ao vídeo novamente, favorito, compartilhá -lo etc.
Outras dicas
Eu diria que pode ser possível apenas definir o MPMoviePlayerController
's movieControlMode
propriedade para MPMovieControlModeHidden
e adicione uma subjacia a ele com sua própria coleção de botões, títulos, etc ... mas MPMoviePlayerController
herda apenas de NSObject
, então você não poderia fazer isso. Talvez você possa subclasse MPMoviePlayerController
e configure suas próprias coisas quando play
é chamado, mais uma vez, eu imagino MPMoviePlayerController
exibiria -se como uma exibição modal de tela cheia e ocultaria qualquer coisa que você configure. :-
Se tudo o que você deseja fazer é mexer com a aparência dos controles, eu sei que você pode mexer com vários objetos ' drawRect:
Métodos para substituir como barras e botões são desenhados.
Por exemplo, configurar uma categoria ou subclasse de UINavigationBar
e implementação drawRect:
Como segue, resultará em uma barra de navegação personalizada sendo desenhada:
- ( void )drawRect:( CGRect )rect
{
[ [ UIImage imageNamed:kSTNavigationBarBackgroundImageName ] drawInRect:CGRectMake( 0.0, 0.0, self.frame.size.width, self.frame.size.height ) ];
}
Isso substitui a aparência padrão da Apple por suas barras de navegação e a substitui por um ativo de imagem personalizado. Fazemos isso, entre outras coisas, para nossos aplicativos.