#android #youtube-api
Вопрос:
Я должен создать список видео на YouTube с помощью API YouTube.
внутри onBindViewHolder () я установил динамический идентификатор-
// Delete previous added fragment FragmentManager fragmentManager= ((FragmentActivity)context).getSupportFragmentManager(); int currentContainerId = viewHolder.frameLayout.getId();// Get the current fragment Fragment oldFragment = fragmentManager.findFragmentById(currentContainerId); if(oldFragment != null) { // Delete fragment from ui, do not forget commit() otherwise no action // is going to be observed fragmentManager.beginTransaction().remove(oldFragment).commit(); } int newid = View.generateViewId(); viewHolder.frameLayout.setId(newid);
и заменить фрагмент
YouTubePlayerSupportFragment youTubePlayerSupportFragment =YouTubePlayerSupportFragment.newInstance();
youTubePlayerSupportFragment.инициализировать(BuildConfig.КЛЮЧ РАЗРАБОТЧИКА, новый com.google.android.YouTube.Игрок.YouTube-плеер.OnInitializedListener() {
private boolean isFullScreen; private YouTubePlayer player; @Override public void onInitializationSuccess(com.google.android.youtube.player.YouTubePlayer.Provider provider, com.google.android.youtube.player.YouTubePlayer player, boolean wasRestored) { if (!wasRestored) { this.player = player; player.cueVideo(videoId); player.addFullscreenControlFlag(com.google.android.youtube.player.YouTubePlayer.FULLSCREEN_FLAG_CONTROL_ORIENTATION); player.setOnFullscreenListener(isFullScreen -> this.isFullScreen = isFullScreen); } Applanga.enable(true); } @Override public void onInitializationFailure(com.google.android.youtube.player.YouTubePlayer.Provider arg0, YouTubeInitializationResult arg1) { Applanga.enable(true); } }); FragmentTransaction transaction = fragmentManager.beginTransaction(); transaction.replace(frameLayoutId, youTubePlayerSupportFragment).commit();
но во время прокрутки происходит сбой, с ошибкой
Не найдено представления для идентификатора 0xd (неизвестно) для фрагмента