我们已经在我们的应用中使用YouTubePlayerView
YouTubePlayer
一段时间了,最近我注意到我们开始看到" 广告&# 34;在视图的左下角。
仔细检查它我确定这来自YouTubePlayerView
,而不是来自播放器或与我们的应用相关的任何其他布局部分。
我们对播放器的初始化非常简单,我们这样做:
mYoutubePlayer.setShowFullscreenButton(false);
mYoutubePlayer.setPlayerStyle(YouTubePlayer.PlayerStyle.MINIMAL);
mYoutubePlayer.addFullscreenControlFlag(YouTubePlayer.FULLSCREEN_FLAG_CONTROL_SYSTEM_UI);
mYoutubePlayer.setPlayerStateChangeListener(playerStateChangeListener);
mYoutubePlayer.setPlaybackEventListener(playbackListener);
这是一个屏幕截图,让您可以看到我的意思:
知道如何摆脱这个广告词吗?
答案 0 :(得分:0)
我认为这就是这个玩家的错误。试试这个黑客来隐藏它。 或者将PlayerStyle更改为CHROMELESS并实现您自己的控件
(((ViewGroup)((ViewGroup)((ViewGroup)((ViewGroup)((ViewGroup)
fragment.getView()).getChildAt(0)).getChildAt(0)).getChildAt(5))
.getChildAt(0)).getChildAt(1)).setVisibility(View.GONE);
片段是YouTubePlayerFragment的实例
答案 1 :(得分:0)
正确答案如下;)
public void removeFromYoutubePlayer(ViewGroup youtubePlayer, int... depths) {
for (int i = 0; i < depths.length; i++) {
youtubePlayer = (ViewGroup) youtubePlayer.getChildAt(depths[i]);
if (i == depths.length - 1) {
youtubePlayer.setVisibility(View.GONE);
}
}
}
以下列方式使用此方法
ViewGroup youtubePlayer = (ViewGroup) youTubePlayerFragment.getView();
int[] youtubeLogo = new int[] { 0, 0, 4, 0, 0, 3, 0, 1 }; // remove youtube logo
int[] adWord= new int[] { 0, 0, 5, 0, 1 }; // remove "ad" word
removeFromYoutubePlayer(youtubePlayer, adWord); // removed "ad" word