禁用youtube api的全屏

bak*_*kua 12 youtube android fullscreen

我有一个带有片段的应用程序,在这些片段中我有框架布局,我添加了YouTubePlayerSupportFragment.但是当我点击全屏时会抛出此异常:

java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.xxx/com.example.xxx.MainActivity}:java.lang.IllegalArgumentException:找不到id 0x7f040039的视图(com.example.xxx:id/frame_youtube)片段YouTubePlayerSupportFragment {4282a068#11 id = 0x7f040039}

Mat*_*ski 37

或者您可以将其禁用1行:

player.setShowFullscreenButton(false);
Run Code Online (Sandbox Code Playgroud)


小智 17

我遇到了同样的问题,并找到了一种方法来处理它对我有用.在OnInitializedListener()片段中,我这样做:

@Override
public void onInitializationSuccess(Provider arg0,
final YouTubePlayer player, boolean arg2) {
//Tell the player you want to control the fullscreen change
player.setFullscreenControlFlags(YouTubePlayer.FULLSCREEN_FLAG_CUSTOM_LAYOUT);
//Tell the player how to control the change
player.setOnFullscreenListener(new OnFullscreenListener(){
@Override
public void onFullscreen(boolean arg0) {                    
// do full screen stuff here, or don't. I started a YouTubeStandalonePlayer 
// to go to full screen
}});

}});
Run Code Online (Sandbox Code Playgroud)

我使用YouTubeStandalonePlayer来处理我的全屏幕时仍然出现错误,所以我通过调用解决了这个问题

finish(); 
Run Code Online (Sandbox Code Playgroud)

在我OnPause()的活动.请记住,如果用户按下后退按钮,您将不会回到停止的位置.您还可以通过意图将用户发送到YouTube应用,这finish()在我测试时不需要OnPause,但不适合我的需求以及独立播放器.

编辑:如果你想删除全屏按钮,你也可以像这样设置播放器样式:

PlayerStyle style = PlayerStyle.MINIMAL;
player.setPlayerStyle(style);
Run Code Online (Sandbox Code Playgroud)