Android视频嵌入

我有一个应用程序从网页中获取一些文本,并将其显示在屏幕上。我想在网页后面放一段视频。我怎么能这样做?如果我喜欢下面的代码,应用程序崩溃(空指针异常)。Android视频嵌入

我的代码:

LinearLayout tt= (LinearLayout)findViewById(R.id.kiu); 

WebView webview;

tt.addView(fin); // fin is the TextView

webview.getSettings().setJavaScriptEnabled(true);

webview.loadUrl("http://www.youtube.com/embed/j4Wmjl7jxQo");

tt.addView(webview);

main.xml中

<?xml version="1.0" encoding="utf-8"?> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent" android:layout_height="fill_parent"

android:scrollbars="vertical"

android:background="#FFFFFF"

>

<LinearLayout

android:id="@+id/kiu"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:padding="0dp">

</LinearLayout>

</ScrollView>

我想不出该怎么办。我想我的应用程序,以显示this而不是this。

回答:

您应该从异常中发布堆栈跟踪。并突出显示它指向哪条线。但是从我这里头的顶部是我注意到:

webview = (WebView) findViewById(R.id.webview); 

...

tt.addView(webview);

findViewById(ID),除非观点已经在屏幕上会返回null。您的xml布局中似乎没有WebView(我认为这是执行此代码时当前在屏幕上的那个WebView)。由于你没有一个findViewById,当你试图使用一个方法时你会得到一个空指针。

你有几个选项基本上是什么,虽然你不会需要findViewById和.addView(),你只需要一个或另一个。

您可以:webview = new WebView(this);

或者

您可以将的WebView添加到您的XML,离开findViewById它是如何,但现在拿出tt.addView(webview);

用的WebView constroctor像这样更换webview = (WebView) findViewById(R.id.webview);

另外请注意,由于您在webview中显示的是YouTube网页,用户将会看到整个页面,而不仅仅是全屏电影。它不会立即开始,他们将不得不按下开始按钮才能开始。如果你正在寻找的东西只是自动播放视频,而不显示任何其他东西,你会想要一个VideoView

Here is a fairly straight forward example of VideoView in action你只需要将你的url粘贴到路径变量。虽然我不确定它是否知道如何解码YouTube网址。

以上是 Android视频嵌入 的全部内容, 来源链接: utcz.com/qa/265155.html

回到顶部