J'ai utilisé l'API Youtube dans mon application avec FirebaseRecyclerAdapter et RecyclerView et, pour certaines raisons, ma vignette YouTube n'est pas affichée dans mon application, bien que je l'ai ajoutée dans mon CardView
et mon FirebaseRecyclerAdapter
a le code pour accéder au CardView
mais quand je démarre mon application et que je vais à cette activité aucune vignette n'est montrée là-bas. Je l'ai implémenté en tant que codé en dur sans adaptateur Firebase.CardView n'affiche pas l'affichage sous forme de vignette Youtube dans Android
mesures que j'ai essayé:
Ajouté la mise en page gestionnaire
Réglage de la hauteur et la largeur Vignettes et ThumbnailView
Je Android Studio
fichier de classe YouTube:
public class YoutubeVideos extends YouTubeBaseActivity {
private RecyclerView YouRecycler;
private DatabaseReference YDatabaseReference;
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.youtube_videos);
YDatabaseReference = FirebaseDatabase.getInstance().getReference().child("youtubed");
YouRecycler = (RecyclerView)findViewById(R.id.Youtube_recycler);
}
@Override
public void onStart() {
super.onStart();
FirebaseRecyclerAdapter<post2youtube, YoutubeViewHolder> YfirebaseRecyclerAdapter = new FirebaseRecyclerAdapter<post2youtube, YoutubeViewHolder>(
post2youtube.class,
R.layout.youtube_videos_card,
YoutubeViewHolder.class,
YDatabaseReference
) {
@Override
protected void populateViewHolder(YoutubeViewHolder viewHolder, post2youtube model, int position) {
viewHolder.setYoutube(model.getYoutube());
}
};
YouRecycler.setAdapter(YfirebaseRecyclerAdapter);
}
public static class YoutubeViewHolder extends RecyclerView.ViewHolder {
View yView;
public YoutubeViewHolder(View YitemView) {
super(YitemView);
yView = YitemView;
}
public void setYoutube(final String youtube){
final YouTubePlayerView youPlay = (YouTubePlayerView) yView.findViewById(R.id.youtuber);
youPlay.initialize("Some key",
new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
youTubePlayer.loadVideo(youtube);
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
}
});
}
}
}
fichier RecyclerView YouTube:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id ="@+id/Youtube_recycler"/>
</LinearLayout>
fichier xml YouTube Vignettes:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/youtube_cardView"
android:layout_width="match_parent" android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.google.android.youtube.player.YouTubePlayerView
android:id="@+id/youtuber"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
</android.support.v7.widget.CardView>
'config' est montrant une erreur de ne peut pas résoudre le symbole, comment l'enlever –
J'ai résolu la config mais elle n'apparaît toujours pas, aussi tout ce que je place dans la vue carte ne s'affiche pas –
Config est une classe dans laquelle DEVELOPER_KEY est statique contre Tant que vous utilisez n'importe quelle autre classe à la place de Config –