Androidアプリを実行しているときに別のコード行にジャンプする方法を知りたい。Androidアプリの実行中に別のコード行に移動する方法
これは私の問題です。
まずは、ここに私のコードです: - 。実行があればonCompletion()メソッドに入るたび
今listView.setOnItemClickListener
(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
int Current_Song;
Songs song = Song.get(i);
//If mediaPlayer is not used before, this will make oldsong as present song.
if (Old_Song == -326523) {
Old_Song = song.getSong();
}
Current_Song = song.getSong();
ImageView IVP_P = (ImageView) findViewById(R.id.P_PImage);
//If mediaPlayer is paused.
if (IsPaused) {
P_and_P.setImageResource(R.drawable.ic_pause_white_48dp);
//If the song paused is same as the new song.
if (Current_Song == Old_Song) {
mediaplayer.start();
}
//If the song Paused is not the new song.
else {
if (mediaplayer != null) {
mediaplayer.release();
mediaplayer = null;
}
int result = mAudioManager.requestAudioFocus(mOnAudioFocusChangeListener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
mediaplayer = mediaplayer.create(SongsListActivity.this, song.getSong());
Old_Song = song.getSong();
NameD.setText(song.getNameOfSong());
RateD.setText(song.getDeveloperRate());
ImageD.setImageResource(song.getImage());
mediaplayer.start();
mediaplayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
P_and_P.setImageResource(R.drawable.ic_play_arrow_white_48dp);
IsPaused = true;
}
});
}
}
IsPaused = false;
} else if (mediaplayer != null) {
//If mediaPlayer is already Playing a song.
if (mediaplayer.isPlaying()) {
P_and_P.setImageResource(R.drawable.ic_play_arrow_white_48dp);
mediaplayer.pause();
IVP_P.setImageResource(R.drawable.ic_play_arrow_black_24dp);
IsPaused = true;
}
}
//If mediaPlayer is used for first time and if mediaPlayer is neither paused
else {
if (mediaplayer != null) {
mediaplayer.release();
mediaplayer = null;
}
int result = mAudioManager.requestAudioFocus(mOnAudioFocusChangeListener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
mediaplayer = mediaplayer.create(SongsListActivity.this, song.getSong());
Old_Song = song.getSong();
NameD.setText(song.getNameOfSong());
RateD.setText(song.getDeveloperRate());
ImageD.setImageResource(song.getImage());
mediaplayer.start();
P_and_P.setImageResource(R.drawable.ic_pause_white_48dp);
mediaplayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
P_and_P.setImageResource(R.drawable.ic_play_arrow_white_48dp);
IsPaused = true;
P_and_P.setImageResource(R.drawable.ic_pause_white_48dp);
}
});
}
}
}
}
);
は、私はonItemClick()メソッドの最初から実行を開始するために実行したいしたいです。
どうすればよいですか?より詳しいことについては
: -
ここに私のアプリは、ListViewコントロールとアダプタを使用した曲のリストが表示されます。ソングの詳細は、ArrayList(すべて参照可能)で保存されます。アイテムがクリックされると、そのアイテムの位置が取得され、arrayListの対応する要素を参照して、対応するソングの位置が取得され、その曲を演奏する。私が欲しいのは、曲が終わってメソッドonCompletion()が呼び出されたとき、私は値の値を増やして(コードの4行目を参照)、それからonItemClickの最初の行に行きたい方法。
あなたはアイテムをクリックする必要があります:) – Kaushal28
私はアイテムをクリックしてそれをしたくない、私はエグゼキュータが自動的に始めに行くようにしたい。 gotoとラベルがどうなるか –