मेरे पास SeekBar
है, यह MediaPlayer
प्रगति को सही ढंग से प्रदर्शित करता है। हालांकि, मुझे तलाशने में परेशानी है - अगर मैं कहीं स्क्रॉल बॉक्स की तलाश करता हूं तो यह उस स्थिति पर वापस आ जाता है जहां ऑडियो फाइल चल रही है।एंड्रॉइड सीकबार मीडियाप्लेयर प्रगति को नियंत्रित करने के लिए
public class EntityPageActivity extends Activity implements Runnable, OnClickListener, OnSeekBarChangeListener{
private SeekBar seekBar;
private Button startMedia;
private Button pauseMedia;
private MediaPlayer mp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.entity_page);
AudioControl();
}
public void AudioControl(){
seekBar = (SeekBar) findViewById(R.id.seekBar);
startMedia = (Button) findViewById(R.id.play);
pauseMedia = (Button) findViewById(R.id.pause);
startMedia.setOnClickListener(this);
pauseMedia.setOnClickListener(this);
}
public void run() {
int currentPosition= 0;
int total = mp.getDuration();
while (mp!=null && currentPosition<total) {
try {
Thread.sleep(1000);
currentPosition= mp.getCurrentPosition();
} catch (InterruptedException e) {
return;
} catch (Exception e) {
return;
}
seekBar.setProgress(currentPosition);
}
}
public void onClick(View v) {
if (v.equals(startMedia)) {
if (mp != null && mp.isPlaying()) return;
if(seekBar.getProgress() > 0) {
mp.start();
return;
}
mp = MediaPlayer.create(EntityPageActivity.this, R.raw.gl1);
mp.start();
seekBar.setProgress(0);
seekBar.setMax(mp.getDuration());
new Thread(this).start();
}
if (v.equals(pauseMedia) && mp!=null) {
mp.pause();
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
public void onStopTrackingTouch(SeekBar seekBar) {
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if(fromUser) mp.seekTo(progress);
}
}
इस प्रकार, onProgressChanged
SeekBar
MediaPlayer
नियंत्रित करने के लिए अनुमति देने के लिए पर्याप्त नहीं है?
मुझे अनुमति देने के लिए मुझे क्या जोड़ना/सही करना चाहिए?
धन्यवाद
अद्यतन
मुझे पता चला कि onProgressChanged
किसी कारण द्वारा लाया कभी नहीं किया गया है। हालांकि मैं समझ नहीं क्यों
@llya मेरे पास मीडिया प्लेयर है लेकिन वीडियो और वर्क्स ठीक के साथ इसका खेल मैं आपकी मदद कर सकता हूं? –
मुझे लगता है कि आप बेहतर जानते हैं कि आप मदद कर सकते हैं या नहीं) यदि आपको लगता है कि आप समस्या का निर्णय कैसे लेते हैं तो जवाब देने का प्रयास करें –
मेरा उत्तर देखें .............. –