Mogę odtwarzać filmy z YouTube za pomocą cuePlaylist()
, ale chcę również zezwolić użytkownikowi na dotknięcie dowolnego elementu listy, a następnie chcę odświeżać YoutubePlayerView
z użytkownikiem wideo tylko postukałJak odświeżyć odtwarzacz YouTube Wyświetl onItemClickListener() w ListView
Używam cuePlaylist()
więc dostanie się do poprzedniej i następnej przyciski jako domyślny funkcjonalność odtwarzacza YouTube
więc mogę odświeżyć YoutubePlayerView
z jednej mam wybranego w ListView
?
Oto mój pełny kod, jeszcze kiedy nie dotknąć dowolnego elementu listy, nie otrzymuję żadnych zmian w YoutubePlayerView
ale stanie Log
wideo Id który właśnie kliknął w ListView
...
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
strVideoID = flowerList.get(i).getUrl();
Log.d("url:", strVideoID); // getting particular video id
youTubePlayerFragment.initialize(API_KEY, new YouTubePlayer.OnInitializedListener() {
// YouTubeプレーヤーの初期化成功
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player, boolean wasRestored) {
if (!wasRestored) {
player.setPlayerStyle(YouTubePlayer.PlayerStyle.DEFAULT);
player.loadVideo(strVideoID);
player.play();
}
}
// YouTubeプレーヤーの初期化失敗
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult error) {
// YouTube error
String errorMessage = error.toString();
Toast.makeText(MainActivity.this, errorMessage, Toast.LENGTH_LONG).show();
Log.d("errorMessage:", errorMessage);
}
});
}
});
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
if (!b) {
youTubePlayer.setPlayerStyle(YouTubePlayer.PlayerStyle.DEFAULT);
youTubePlayer.cuePlaylist(PLAYLIST_ID);
}
}
Wypróbuj ze strVideoID = flowerList.get (i-1) .getUrl(); zamiast strVideoID = flowerList.get (i) .getUrl(); Zmień i na I-1 –
@MaheshwarLigade, ale dlaczego, ponieważ dostaję dokładny identyfikator wideo, gdy dotknę elementu listy, problem jest, nie jestem w stanie odtworzyć wideo, które mam wystukał na liście – Sophie
I ponieważ indeks tablicy jest rozpoczęty od 0 do n, dlatego myślę, że powinien być problem z indeksem. Jak wspomniałeś w OP. –