webentwicklung-frage-antwort-db.com.de

Fehler beim Aufblasen der Klasse com.google.Android.youtube.player.YouTubePlayerView In List Adapter

Ich versuche aufzublasen

<com.google.Android.youtube.player.YouTubePlayerView
                Android:id="@+id/youtubeplayerview"
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:padding="5dp" />

im Listenadapter, damit ich das Video in der Listenansicht selbst abspielen kann, aber ich erhalte eine Fehlermeldung

Fehler beim Aufblasen der Klasse com.google.Android.youtube.player.YouTubePlayerView

während ich benutze

<com.google.Android.youtube.player.YouTubeThumbnailView
                Android:id="@+id/youtubeplayerview"
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:padding="5dp" />

Es wird ohne Fehler aufgepumpt und ich kann ein Miniaturbild in der Listenansicht anzeigen

Meine Anforderung ist, wenn der Benutzer auf dieses Miniaturbild klickt, dass das Video in der Listenansicht abgespielt werden soll

Bitte schlagen Sie vor, wie ich dies erreichen kann.

9
Naga

Aus der Dokumentation :

Die direkte Verwendung dieser Ansicht ist eine Alternative zur Verwendung der YouTubePlayerFragment. Wenn Sie diese Ansicht direkt verwenden, muss Ihre Aktivität YouTubeBaseActivity erweitern.

Daher müssen Sie sicherstellen, dass Ihre Aktivität YouTubeBaseActivity erweitert. Wenn Ihre Aktivität eine von der Bibliothek bereitgestellte Aktivität nicht erweitern muss, können Sie alternativ YouTubePlayerSupportFragment und FrameActivity aus Android.support.v4 verwenden.

<fragment
  Android:name="com.google.Android.youtube.player.YouTubePlayerSupportFragment"
  Android:id="@+id/youtubesupportfragment"
  Android:layout_width="match_parent"
  Android:layout_height="wrap_content"/>
15
not_a_bot

Zusätzlich zur Antwort von not_a_bot möchte ich hinzufügen, dass Sie sicherstellen sollten, dass Sie super.onCreate(Bundle) method aufrufen, da es den Anschein hat, dass die Klasse YouTubeBaseActivity die Annotation @CallSuper nicht hat.

1
Dragas

Wenn Sie kein Fragment in Ihrem Layout verwenden möchten, können Sie auch eine Erweiterung Ihrer Aktivität von YouTubeBaseActivity() verwenden. Auf diese Weise können Sie <com.google.Android.youtube.player.YouTubePlayerView/> in Ihrem Layout verwenden

Beispiel:

class PlayVideoActivity : YouTubeBaseActivity(), YouTubePlayer.OnInitializedListener {...}
0
Robert

Versuchen Sie in Ihrer Java-Datei MainActivity.Java, public class MainActivity extends AppCompatActivity durch public class MainActivity extends YouTubeBaseActivity zu ersetzen.

0
user7156149