بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
قرار دادن تایمر در media player
سلام خدمت دوستان.من میخواستم تو این کد یک تایمر هم قرار بدم که شامل دو قسمت باشه(زمان فعلی و کل زمان موزیک).میشه راهنمایی کنید؟(اگر کد هم بدین ممنون میشم).
package shahkar.app.bookdo;
import android.app.Activity;
import android.content.SharedPreferences;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.SeekBar;
import android.widget.TextView;
public class Activity_s1 extends Activity {
SeekBar seekBar;
MediaPlayer mediaplayer;
ImageView pause_btn;
ImageView play_btn;
TextView txt_zamanefeli;
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
mediaplayer.stop();
Activity_s1.this.finish();
mediaplayer.stop();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.s1);
SharedPreferences shp = getSharedPreferences("sett", MODE_PRIVATE);
boolean chbt = shp.getBoolean("chk", true);
if (chbt)
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
pause_btn = (ImageView) findViewById(R.id.pause_btn);
play_btn = (ImageView) findViewById(R.id.play_btn);
seekBar = (SeekBar) findViewById(R.id.slider);
mediaplayer = MediaPlayer.create(Activity_s1.this, R.raw.d1);
// ######### az rooye moshakhasate file soti seekbar ro tanzim mikonim...
mediaplayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
seekBar.setMax(mediaplayer.getDuration());
seekBar.postDelayed(onEverySecond, 1000);
}
});
// ########## mediaplayer ro start mikonim
mediaplayer.start();
// ############## baraye inke vaghti seekbar ro jabeja mikonid...
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if (fromUser) {
// vaghti seek bar ro jabeja mikonim inja ejra mishe...
mediaplayer.seekTo(progress);
}
}
});
//dokmeye pause
pause_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mediaplayer.pause();
}
});
//dokmeye play
play_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mediaplayer.start();
// tanzim e dobareye seekbar bad az inke dobare play kardim
seekBar.setMax(mediaplayer.getDuration());
seekBar.postDelayed(onEverySecond, 1000);
}
});
///////////////////////////
} // end of onCreate
/////////////////////////
// in ye joor timer hast ke har sanie yek bar seekbar ro update mikone
private Runnable onEverySecond = new Runnable() {
@Override
public void run() {
if (seekBar != null) {
seekBar.setProgress(mediaplayer.getCurrentPosition());
}
if (mediaplayer.isPlaying()) {
seekBar.postDelayed(onEverySecond, 1000);
}
}
};
}
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .