بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
اشکال در سیک بار
سلام خدمت دوستان عزیز
اقا ما یه موزیک پلیره ساده داریم توش یه سیک بار کذاشتیم وطبق آموزش های استاد راه اندازیش کردم.
آمّــــا...
این سیک باررو جابه جا که میکنم اهنگ جابه جا میشه ولی وقتی باهاش کاری ندارم خودش نمیره جلو...
لطفا از ترد و این چیزا هم نگین...یه راه حل ساده و قابل فهم واسه یک تازه وارد...
دمتون گرم
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
sadeghbarout
12 سال پیش
+2
0
باید از همچین کدی استفاده کنی:
final Runnable mUpdateTimeTask = new Runnable() {
@Override
public void run() {
long totalDuration = mp.getDuration();
long currentDuration = mp.getCurrentPosition();
int progress = (int) (utils.getProgressPercentage(currentDuration, totalDuration));
seekProgress.setProgress(progress);
// Running this thread after 100 milliseconds again
mHandler.postDelayed(this, 100);
}
};
پاسخ به سوال
نورحسینی
12 سال پیش
+2
0
اینم کد کامل یک سیک بار با تردش . برای خودمه فقط باید یک کمی بهش ور بری
public class ActivityDoa_Salehi extends Activity {
SeekBar seekBar;
MediaPlayer mediaplayer;
ImageView pause_btn;
ImageView play_btn;
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
Intent intent = new Intent(ActivityDoa_Salehi.this, ActivityDoa_Index.class);
ActivityDoa_Salehi.this.startActivity(intent);
mediaplayer.stop();
ActivityDoa_Salehi.this.finish();
mediaplayer.stop();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.doa_salehi);
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(ActivityDoa_Salehi.this, R.raw.salehi);
// ######### 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);
}
}
};
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .