簡體   English   中英

MediaPlayer 無法通過單擊按鈕在適配器 Recyclerview 中暫停

[英]MediaPlayer cannot paused in Adapter Recyclerview with once Click Button

請幫忙,我總是在這里遇到錯誤,我使用 1 按鈕在音頻列表中創建媒體播放器,我已經創建了條件並在適配器 class 中的媒體播放器上播放 function,當單擊音頻按鈕時成功運行,但是當我單擊第二次,音頻不能暫停,從頭開始重復,幫助我,什么是正確的解決方案?

這是我的代碼:

    public void onBindViewHolder(@NonNull MurottalAdapter.MurotalHolder holder, int position) {
        Item item  = itemList.get(position);
        holder.titles.setText(item.getTitle());
        holder.btnplays.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
//I've tried replacing this with holder.itemview.getContext() and I put it outside the onclick method, but the problem is the same
                mediaPlayer = MediaPlayer.create(view.getContext(),item.getAudio()); 
                if (mediaPlayer.isPlaying()){
                    if (mediaPlayer != null) {
                        mediaPlayer.pause();
                        holder.btnplays.setImageResource(R.drawable.ic_play_circle_filled_black_24dp);
                    }
                } else {
                    if (mediaPlayer != null){
                        mediaPlayer.start();
                        holder.btnplays.setImageResource(R.drawable.ic_pause_circle_filled_black_24dp);
                    }
                }
            }
        });
    }

請嘗試將以下代碼移到 onClick() 方法之外?

mediaPlayer = MediaPlayer.create(view.getContext(),item.getAudio());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM