我在网页浏览中播放了一个SWF视频,当我按下back_key时,声音仍然存在..我不知道如何销毁它......请帮助我,代码如下:
public class Video extends Activity {
private WebView webview = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Intent intent = getIntent();
String url = intent.getExtras().getString("Url");
Log.i("URL OF VIDEO IS", url);
setTitle("Video");
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.webpageview);
webview = (WebView) findViewById(R.id.webview);
webview.getSettings().setPluginsEnabled(true);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl(url);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//How can I destroy the Activity? I tried finish() it, but it doesn't works.
webview.removeAllViews();
return super.onKeyDown(keyCode, event);
} else {
return super.onKeyDown(keyCode, event);
}
}
}
答案 0 :(得分:2)
在你使用之前我们认为你需要知道至少这个。
和
修改强>
始终使用应用程序上下文实例化webview。
webView = new WebView(getApplicationContext());
如果你想在xml中使用webview。延伸它
public MyWebView(Context context, AttributeSet attrs) {
super(getApplicationContext(), attrs);
}
并像这样使用
<com.myapp.MyWebView ...
并在您不再需要该视图的所有地方调用此方法。
webView.destroy();
因为有时可能无法调用Activity.onDestroy,Activity.onStop。