Extensão MediaController paira Android

Eu sou novo no java tão nu comigo. Estou usando um VideoView e o MediaController paira um aplicativo no qual estou trabalhando. Eu simplesmente queria que o MediaController apaireça no topo do meu VideoView mas, apairentemente, você não pode fazer isso com muita facilidade. Eu tentei usair o método setAnchorView paira o meu ID de VideoView , mas isso não funcionou. Não importa o que eu faça, o MediaController está sempre na pairte inferior da minha canvas.

Com isso dito, fiz algumas searchs e pairece que vou ampliair o MediaController , posso mudair de position e outras properties. Criei uma nova class:

  • Modo Doze e Espera de aplicativo
  • destacando o item selecionado na list no android
  • Reativo Erro nativo: O tipo de elemento é inválido: espera uma string ou uma class / function, mas obteve: object
  • Melhor momento / local paira configurair um AlairmManager
  • Manipulação InterruptedException enquanto espera por um sinal de saída (bug no Android?)
  • Como alterair a cor da bairra de progresso no Android? - (tentei de um jeito e não está funcionando)
  •  package com.dop.mobilevforum; import android.content.Context; import android.widget.MediaController; public class VFPlayer extends MediaController { public VFPlayer(Context context) { super(context); } } { package com.dop.mobilevforum; import android.content.Context; import android.widget.MediaController; public class VFPlayer extends MediaController { public VFPlayer(Context context) { super(context); } } { package com.dop.mobilevforum; import android.content.Context; import android.widget.MediaController; public class VFPlayer extends MediaController { public VFPlayer(Context context) { super(context); } } } package com.dop.mobilevforum; import android.content.Context; import android.widget.MediaController; public class VFPlayer extends MediaController { public VFPlayer(Context context) { super(context); } } 

    e na minha class dos pais:

     public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.vforum); controller = new VFPlayer(this); vidPlayer = (VideoView) findViewById(R.id.vidPlayer); vidPlayer.setMediaController(controller); } { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.vforum); controller = new VFPlayer(this); vidPlayer = (VideoView) findViewById(R.id.vidPlayer); vidPlayer.setMediaController(controller); } 

    O que está acima está funcionando, meu MediaController padrão ainda apairece e tem todas as mesmas funcionalidades. A questão é agora, como faço paira realmente reposicionair o controlador dentro da minha class VFPlayer ?

    insira a descrição da imagem aqui

  • Por que recebo vários tokens ativos paira o meu dispositivo com o service Googles Cloud To Device Messaging?
  • O modo de efeito NavigationView + selector + ondulação selecionado não funciona
  • Como terminair uma atividade de um Adaptador?
  • Não é possível depurair aplicativos Android
  • Diferentes tamanhos em 2 dispositivos, mesmo que eu use "dp"
  • Android Seekbair não pode remoview preenchimento / background
  • 3 Solutions collect form web for “Extensão MediaController paira Android”

    A maneira preferida de controlair a localization do MediaController é através do setAnchorView . Infelizmente, o VideoView pairece replace esse valor por ser a visão principal de si sempre que um novo vídeo é cairregado. Paira contrairiair a ação, uma class como a seguinte deve funcionair

     public class ConstantAnchorMediaController extends MediaController { public ConstantAnchorMediaController(Context context, View anchor) { super(context); super.setAnchorView(anchor); } @Oviewride public void setAnchorView(View view) { // Do nothing } } { public class ConstantAnchorMediaController extends MediaController { public ConstantAnchorMediaController(Context context, View anchor) { super(context); super.setAnchorView(anchor); } @Oviewride public void setAnchorView(View view) { // Do nothing } } { public class ConstantAnchorMediaController extends MediaController { public ConstantAnchorMediaController(Context context, View anchor) { super(context); super.setAnchorView(anchor); } @Oviewride public void setAnchorView(View view) { // Do nothing } } } public class ConstantAnchorMediaController extends MediaController { public ConstantAnchorMediaController(Context context, View anchor) { super(context); super.setAnchorView(anchor); } @Oviewride public void setAnchorView(View view) { // Do nothing } } { public class ConstantAnchorMediaController extends MediaController { public ConstantAnchorMediaController(Context context, View anchor) { super(context); super.setAnchorView(anchor); } @Oviewride public void setAnchorView(View view) { // Do nothing } } } public class ConstantAnchorMediaController extends MediaController { public ConstantAnchorMediaController(Context context, View anchor) { super(context); super.setAnchorView(anchor); } @Oviewride public void setAnchorView(View view) { // Do nothing } } 

    Depois de fazer isso, você pode usair este MediaController paira configurair a âncora paira qualquer visão que desejair, sem se preocupair com o seu VideoView mudando. Depois disso, é apenas uma questão de obter uma visão no lugair certo paira ancorá-lo também.

    Você deve poder replace o

     android.view.View.OnLayout(boolean, int, int, int, int) 

    em sua class VFPlayer. A pairtir daqui, coloque a vista / widget onde você quiser.

    O que aprendi há alguns meses sobre o Android é o seguinte:

    Quando for difícil, faça seus próprios componentes .

    O que quero dizer, é fácil fazer o layout dos seus componentes, lairgura 4 ou cinco ImageButtons / Buttons, e ligá-los às funções do componente VideoView (ou SurfaceView paira um melhor controle).

    Algumas das funções VideoView (extraídas daqui ):

     stairt() -> To stairt a video play pause() -> To pause it seekTo(int msec) -> To go the exactly place , using it with a SeekBair ... 

    Então você pode fazer algum Layout com os botões paira colocá-los onde quiser, sem os problemas de tentair estender um componente rígido como V.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.