Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package it.fontanagianpaolo.www.prova;
- import android.app.Activity;
- import android.media.MediaPlayer;
- import android.net.Uri;
- import android.os.Bundle;
- import android.os.Handler;
- import android.view.Menu;
- import android.view.View;
- import android.widget.Button;
- import android.widget.SeekBar;
- import java.io.IOException;
- public class Classes extends Activity implements MediaPlayer.OnPreparedListener {
- static Button playButton;
- static Button pauseButton;
- static Button stopButton;
- static SeekBar seekBar;
- private static MediaPlayer player;
- static Handler handler;
- static Uri audio;
- static boolean canMakeCall = false;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- player = MediaPlayer.create(this, R.raw.underwater);
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_classes);
- playButton = (Button) findViewById(R.id.playButton);
- pauseButton = (Button) findViewById(R.id.pauseButton);
- stopButton = (Button) findViewById(R.id.stopButton);
- seekBar = (SeekBar) findViewById(R.id.seekBar);
- if (canMakeCall = true) {
- player.setOnPreparedListener(this);
- handler = new Handler();
- seekBar.setMax(player.getDuration());
- playButton.setOnClickListener(new View.OnClickListener() {
- public void onClick(View view) {
- if (!player.isPlaying()) {
- player.start();
- updateSeekBar();
- }
- }
- });
- pauseButton.setOnClickListener(new View.OnClickListener() {
- public void onClick(View view) {
- if (player.isPlaying()) {
- player.pause();
- updateSeekBar();
- }
- }
- });
- stopButton.setOnClickListener(new View.OnClickListener() {
- public void onClick(View view) {
- if (player.isPlaying()||!(player.isPlaying()) ) {
- player.stop();
- try {
- player.prepare();
- player.seekTo(0); // mi fa ricominciare la traccia audio
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- });
- seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
- @Override
- public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
- if (b) {
- seekChanged(seekBar, i, b);
- }
- }
- @Override
- public void onStartTrackingTouch(SeekBar seekBar) {
- }
- @Override
- public void onStopTrackingTouch(SeekBar seekBar) {
- }
- });
- player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
- @Override
- public void onCompletion(MediaPlayer mediaPlayer) {
- mediaPlayer.stop();
- player.stop();
- seekBar.setProgress(0);
- seekBar.invalidate();
- }
- });
- }
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.menu_main, menu);
- return true;
- }
- @Override
- public void onPrepared(MediaPlayer mediaPlayer) {
- playButton.setEnabled(true);
- canMakeCall = true;
- }
- public void seekChanged(SeekBar seekBar, int progress, boolean fromUser) {
- player.seekTo(progress);
- }
- public void updateSeekBar() {
- seekBar.setProgress(player.getCurrentPosition());
- if (player.isPlaying()) {
- Runnable notification = new Runnable() {
- public void run() {
- updateSeekBar();
- }
- };
- handler.postDelayed(notification, 1500);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement