Не удается разрешить метод добавления YouTubePlayerSupportFragment 2020 - PullRequest
0 голосов
/ 02 августа 2020

привет, я добавляю youtube в свой фрагмент, но получаю Не удается разрешить метод 'add (int, com.google. android .youtube.player.YouTubePlayerSupportFragment)' error.

вот мой код ..

public class ProductFragment extends Fragment implements View.OnClickListener {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
    View rootView = inflater.inflate(R.layout.productlayout, container, false);

    YouTubePlayerSupportFragment youTubePlayerFragment = YouTubePlayerSupportFragment.newInstance();
    FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
    transaction.add(R.id.youtube_layout, youTubePlayerFragment).commit();
    youTubePlayerFragment.initialize(API_KEY, new YouTubePlayer.OnInitializedListener() {
        @Override
        public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player, boolean wasRestored) {
            if (!wasRestored) {
                player.setPlayerStyle(YouTubePlayer.PlayerStyle.DEFAULT);
                player.loadVideo("5OpGXj-wzeQ");
                player.play();
            }
        }
        @Override
        public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult error) {
            // YouTube error
            String errorMessage = error.toString();
            Toast.makeText(getActivity(), errorMessage, Toast.LENGTH_LONG).show();
        }
    });

    return rootView;
}

эта часть показа кода не может быть разрешена.

transaction.add(R.id.youtube_layout, youTubePlayerFragment).commit();

xml

<FrameLayout
    android:id="@+id/framelayoutvideo"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/rounded_white_new"
    android:padding="10dp"
    android:layout_marginTop="20dp"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:layout_below="@+id/framelayoutproductinfo">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <FrameLayout
            android:id="@+id/youtube_layout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>

    </RelativeLayout>

</FrameLayout>

кто-нибудь может мне помочь с этой проблемой. заранее спасибо.

1 Ответ

0 голосов
/ 02 августа 2020

Это не представление, а Fragment Таким образом, вы можете добавить его с помощью

FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.add(R.id.youtube_layout, youTubePlayerFragment);
ft.commit();

Вы также можете указать https://developer.android.com/guide/components/fragments#Transactions

...