У меня есть два действия: MainActivity
имеет youtubePlayerView
для отображения видео с YouTube и кнопку «Выбор», ChoseVideoActivity
имеет 2 кнопки с текстом «Video1» и «Video2».
В MainActivity
я нажал кнопку «Выбор», чтобы открыть ChoseVideoActivity
.В ChoseVideoActivity
я мог бы нажать любую из двух кнопок.
Когда нажата кнопка с текстом «video1», действие отсылает YouTube ID видео 1. Когда кнопка с текстом «video2»по щелчку, действие отправляет обратно идентификатор YouTube видео 2.
В onActivityResult
я звоню cueVideo()
с идентификатором, который отправляется обратно.Это должно было сработать, но это не сработало.Он работал нормально, когда я работаю в том же упражнении.
Я использовал API проигрывателя YouTube для Android.
onActivityResult () в MainActivity
private void addEvents() {
btChose.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, ChoseVideoActivity.class);
startActivityForResult(intent,REQUEST_CODE);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK && data!=null)
{
String link = data.getStringExtra("LINK");
player.cueVideo(link);
Toast.makeText(this, link, Toast.LENGTH_SHORT).show();
}
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
player = youTubePlayer;
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
Toast.makeText(this, "Error!",Toast.LENGTH_LONG).show();
}
Нажмите слушателя в ChoseVideoActivity
private void addEvents() {
btVideo1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.putExtra("LINK",link_video1);
setResult(RESULT_OK,intent);
finish();
}
});
btVideo2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.putExtra("LINK",link_video2);
setResult(RESULT_OK,intent);
finish();
}
});
}