如何通过编程创建一个透明的Activity?

3

我希望从当前Activity启动一个包含webView的Activity。这个新的Activity需要是透明的,而且webView应该在中心位置。我在网上搜索过,但是找到的解决方案都是使用style xmls。我想使用纯代码来实现,即没有xml声明。如果有人遇到过这种情况,请给我一些提示。

1个回答

2
你考虑过在对话框中嵌入 WebView 吗?
编辑: 这是我在 onCreateDialog() 中的代码:
Dialog d = new Dialog(MainFloatOver.this);
LinearLayout mLinearLayout = new LinearLayout(this);
mLinearLayout.setBackgroundColor(android.R.color.transparent);
LinearLayout.LayoutParams llp = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
mLinearLayout.setLayoutParams(llp);
d.setContentView(mLinearLayout);
WebView mWebView = new WebView(this);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("www.google.com");
mLinearLayout.addView(mWebView);

我试过了,但是一旦我在Webview中加载URL,它就会在浏览器中打开,而不是在对话框内的Webview中。 - bhups
这很奇怪,我几周前使用过这种技术,而且它一直都在工作...尽管每次我尝试使用外部链接时都会出现“网页不可用”的错误提示... - Sephy
你能给我展示一下你正在使用的代码吗?对于“网页不可用”,你可能需要在你的应用程序中添加网络权限。 - bhups
我已经拥有了互联网权限,启用了JavaScript,并尝试更改WebClient...不知道为什么会出现这种情况...当我有代码时,我会在一个小时内把它给你。 - Sephy
@bhups 或许有点晚了,但是请确保在你的 WebViewClient 中提供 shouldOverrideUrlLoading() 方法的覆盖。这通常发生在你尝试加载的 URL 进行重定向时。 - hopia

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接