当前位置: 首页 > 知识库问答 >
问题:

YouTubePlayerFragment方向更改时出现黑屏

席俊达
2023-03-14

我正在尝试继续播放关于方向更改的YouTubePlayerFragment

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) {
    FrameLayout frameLayout = new FrameLayout(getActivity());
    populateViewForOrientation(inflater, frameLayout);
    return frameLayout;
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    LayoutInflater inflater = LayoutInflater.from(getActivity());
    populateViewForOrientation(inflater, (ViewGroup) getView());
}

private void populateViewForOrientation(LayoutInflater inflater, ViewGroup viewGroup) {
    viewGroup.removeAllViewsInLayout();
    rootView = inflater.inflate(getLayoutResId(), viewGroup);
    ButterKnife.bind(this, rootView);

    if (frYTube != null) {
       FragmentTransaction transaction = getFragmentManager().beginTransaction();
       transaction.replace(R.id.frame, frYTube);
       transaction.commitAllowingStateLoss();
    }
}
 mYouTubePlayer.loadVideo(url);
 ...
 public void onLoaded(String s) {
  mYouTubePlayer.seekToMillis(mills);

共有1个答案

慕仲渊
2023-03-14

基于此文章,请确保在还原而不是显式创建过程中调用oncreate()时,您正在初始化oncreate()中的YouTubePlayerView。这里有一个教程,其中包含片段的活动不需要扩展任何特殊的基类。

您也可以检查相关的线程:屏幕定向不使用youtubePlayerfragment

 类似资料:
  • 我正在我的项目中使用ActionBar。我想改变ActionBar项目的方向意味着在屏幕的右侧找到选项卡图标和徽标,并在屏幕的左侧找到菜单项。我在谷歌上搜索了一下,但并没有找到任何有用的东西,我还阅读了API 14中主题和样式的xml资源,但我再次并没有找到任何解决方案。

  • 我正在向运行的activity添加一个带有WindowManager的相机覆盖。当我启动相机并调用WindowManager时,它将我的屏幕从纵向变为横向,即使我为WindowManager.LayoutParams分配了适当的纵向标记。还没能通过谷歌找到任何解决方案。 下面是我在服务中的方法中运行的WindowManager代码: 布局r.layout.camera只是我将相机添加到的Frame

  • 问题内容: 我不太确定自己是如何陷入困境的,但是由于某种原因,我无法使用替代方法来更改Java的当前版本。我可以运行其他选项–config java并输入选择内容,但是当我回显java或javac的版本号时,它每次都会吐出1.5(尽管其他选项显示当前版本为1.6)。顺便说一下,我正在使用的服务器正在运行RHEL5。 我已验证替代方法中使用的路径指向正确的目录。这是我的会话的一些输出: [brile

  • 下面是一个简单对话框的示例代码: 下面是一些活动代码: 代码与您所看到的引用大致相同。问题是,一旦您改变了方向,当显示对话框时,它就停止了预期的工作-->由于活动生命周期的原因,活动和对话框都被重新构建,并且对话框现在没有对重新构建的新活动的正确引用。 致以最诚挚的问候

  • 我有一个片段,我有一个listview。当我按下listview position时,我打开片断对话框,在其中我发送所单击项目的位置。在那里,我可以从ListView实时更改一些数据。但是当我改变我的方向(片段和对话框片段都有不同的布局)时,live更改不再起作用。如果我去另一个片段,比回来,改变是做了,但不是活着。 两者都将SetRetaInstance设置为true。 在片段中设置适配器: 对

  • 我在活动中有以下代码: 我正在从中的不同片段更新ActionBar标题,如下所示: