gpt4 book ai didi

android - Tab 内的 WebView 隐藏了 tabWidgets

转载 作者:搜寻专家 更新时间:2023-11-01 07:41:11 24 4
gpt4 key购买 nike

我遇到了 WebView 总是填满整个屏幕并因此覆盖了我的选项卡的问题。这是我的 tabhost 代码..

    public class tabNZBMobile extends TabActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);

Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Reusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab

// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(this, NewzbinMobile.class);

// Initialize a TabSpec for each tab and add it to the TabHost
spec = tabHost.newTabSpec("search").setIndicator("Search",
res.getDrawable(R.drawable.ic_tab_search))
.setContent(intent);
tabHost.addTab(spec);

// Do the same for the other tabs
intent = new Intent().setClass(this, sabnzbWeb.class);
spec = tabHost.newTabSpec("sabnzbweb").setIndicator("SabNZBd",
res.getDrawable(R.drawable.ic_tab_sabnzbweb))
.setContent(intent);
tabHost.addTab(spec);

tabHost.setCurrentTabByTag("search");
}}

我的第一个选项卡 (NewzbinMobile.class) 显示正确,它只是一个相对布局。但我的第二个选项卡是一个显示 webview 的 Activity ,它正在显示,但使用整个屏幕,覆盖我的选项卡。这是我的第二个选项卡的代码。

    public class sabnzbWeb extends Activity {
WebView mWebView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String sabNZBurl = new String("http://test.server.org:8080/m");

mWebView = new WebView(this);
mWebView.getSettings().setJavaScriptEnabled(true);
setContentView(mWebView);
mWebView.loadUrl(sabNZBurl);
}}

最佳答案

就是这样。我知道通过覆盖 WebViewClient 的 shouldOverrideUrlLoading 方法来处理重定向,但我没有意识到我正在测试的 url 正在重定向!非常喜欢。

所以要修复,这就是我所做的..

final class MyWebViewClient extends WebViewClient {
@Override
// Show in WebView instead of Browser
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
view.loadUrl(url);
return true;
}
}

然后在我像这样在 onCreate() 中创建 MyWebViewClient 之后立即将它添加到我的 WebView

mWebView.setWebViewClient(new MyWebViewClient());

关于android - Tab 内的 WebView 隐藏了 tabWidgets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2717750/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com