2017-05-23 13 views
0

画像をクリックすると、画像をクリックすると、画像をクリックすると、画像から別のmp3にストリームする必要があります(アプリケーション自体に保存されているmp3はすべて、50ページ(画像)& 50 mp3)。一時停止後にメディアプレイヤーを再開する

私は再びそのmp3を停止をクリックした場合、私は、正しく画像に音声ストリームをクリックし、その後第三は、最初からmp3を再起動し、それをクリックし

私は位置からmp3を再開する第三クリックをしたいです一時停止した場所。

MainActivity:

public class MainActivity extends Activity { 
private ViewPager mViewPager; 
MediaPlayer mp; 
    @Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mViewPager= (ViewPager) findViewById(R.id.view_pager); 
    ImageAdapter adapter = new ImageAdapter(this); 
    mViewPager.setAdapter(adapter); 

    final GestureDetector tapGestureDetector = new GestureDetector(this, new TapGestureListener()); 
    mViewPager.setOnTouchListener(new View.OnTouchListener() { 
     public boolean onTouch(View v, MotionEvent event) { 
      tapGestureDetector.onTouchEvent(event); 
      return false; 
     } 
    }); 
} 

private class TapGestureListener extends GestureDetector.SimpleOnGestureListener { 
    @Override 
    public boolean onSingleTapConfirmed(MotionEvent e) { 

     if (mViewPager.getCurrentItem() == 0) { 

      if(mp != null && mp.isPlaying()){ 
       mp.pause(); 

       }else{ 

       mp = MediaPlayer.create(MainActivity.this, R.raw.aa);     
       mp.start(); 

        } 
       }  
     else if (mViewPager.getCurrentItem() == 1) { 

      if(mp != null && mp.isPlaying()){ 
       mp.pause(); 


      }else{ 

       mp = MediaPlayer.create(MainActivity.this, R.raw.bb); 
       mp.start(); 

        } 
       } 
    else if (mViewPager.getCurrentItem() == 2) { 

      if(mp != null && mp.isPlaying()){ 
       mp.pause(); 

      }else{ 

      mp = MediaPlayer.create(MainActivity.this, R.raw.cc); 
      mp.start(); 
       } 
      } 
    else if (mViewPager.getCurrentItem() == 3) {     

      if(mp != null && mp.isPlaying()){ 
      mp.pause(); 

      }else{ 

      mp = MediaPlayer.create(MainActivity.this, R.raw.dd); 
      mp.start(); 
       } 
      } 
    else if (mViewPager.getCurrentItem() == 4) {     

     if(mp != null && mp.isPlaying()){ 
      mp.pause(); 

      }else{ 

      mp = MediaPlayer.create(MainActivity.this, R.raw.ee); 
      mp.start(); 
       } 
     } else if (mViewPager.getCurrentItem() == 5) {     

      if(mp != null && mp.isPlaying()){ 
       mp.pause(); 

       }else{ 

      mp = MediaPlayer.create(MainActivity.this, R.raw.ff); 
      mp.start(); 
       } 
     } 
    else if (mViewPager.getCurrentItem() == 6) { 

      if(mp != null && mp.isPlaying()){ 
       mp.pause(); 

       }else{ 

      mp = MediaPlayer.create(MainActivity.this, R.raw.gg); 
      mp.start(); 
       }   
     } 

     return super.onSingleTapConfirmed(e); 
     } 
    } 
} 

してください任意の助けが理解されるであろう。

答えて

0

私は3回以下のように正確に同じ画像をクリックして管理できます。

1-まずクリックが==)MP3を再生します。

1 - 2番目をクリック==)、ポーズmp3

3-第クリック==)それが一時停止したところから再びmp3の再生を再開する。

if (mViewPager.getCurrentItem() == 0) { 
      if(mp != null && mp.isPlaying()){ 
       mp.pause(); 
      length = mp.getCurrentPosition(); 

      }else{ 

      mp = MediaPlayer.create(MainActivity.this, R.raw.aa); 
      mp.seekTo(length); 

      mp.start(); 
      }    

      } 
関連する問題