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