什么是在视频列表中静音/取消静音的最佳方法

问题描述:

我使用TextureViewMediaPlayer来显示视频列表。我想为所有视频静音/取消静音。什么是在视频列表中静音/取消静音的最佳方法

什么问题

问题是,当我使用notifyDataSetChanged()方法则播放视频被重新加载,因为onBindViewHolder()notifyDataSetChanged()后执行。

守则静音/取消静音图标的点击

case R.id.volume_button: 
       if (isToPlaySoundInitially) { 
        volumeKey.setImageResource(R.drawable.unmute_video); 
        isToPlaySoundInitially = false; 
        mVideoView.unMuteVideo(); 

       } else { 
        volumeKey.setImageResource(R.drawable.mute_video); 
        isToPlaySoundInitially = true; 
        mVideoView.muteVideo(); 

       } 
       notifyDataSetChanged(); 
       break; 

方法进行静音/取消静音

public void muteVideo() { 
    if (this.mp != null) { 
     mp.setVolume(0, 0); 
    } 
} 

public void unMuteVideo() { 
    if (this.mp != null) { 
     mp.setVolume(1, 1); 
    } 
} 

请建议我怎么能静音/取消静音的列表中的所有项目。

谢谢。

+0

你能发表一些你的代码吗? –

+0

我已经更新了我的问题,在适配器 –

+0

中单击事件的代码我希望您为您的物品创建持有人,从此您可以直接触摸您的物品视图。 –

使用MediaPlayer类的setVolume函数将音量设置为0. 请勿使用AudioManager类,因为如果将音量设置为0,则使用AudioManager,然后将MediaPlayer和VideoView的所有实例的音量设置为0。

但是,如果您将使用MediaPlayer的setVolume()方法,那么它只会将该实例的音量静音。

另外,使用VideoView将音量设置为0也不容易,因为VideoView是MediaPlayer类的包装,只允许访问MediaPlayer的少数功能。

+0

我想这不是我的问题。我没有任何问题来关闭和取消静音特定的视频。当我将任何一个视频静音时,我想将所有视频的声音静音,取消静音也一样。如果您有任何疑问,可以查看Facebook应用程序。 –

+0

我希望这可以帮助你:http://*.com/a/10896086/7795876 – Hangman