从充气布局控制多个WebView

时间:2016-08-27 16:16:14

标签: android webview tabs

我正在努力让用户可以添加/删除标签。 添加新选项卡后,选项卡的内容将设置为TBrowser.class。

以下是制作标签的方式:

private void addMethod() {
        ++i;

        Intent TBrowser = new Intent(); 
        TBrowser.setClass(this, TBrowser.class);

        tabHost.addTab(tabHost.newTabSpec(Integer.toString(i)).setIndicator("Tab").setContent(TBrowser));
    }

TBrowser.class基本上有一个带有WebView的布局的contentView。

到目前为止它工作正常,除了我只能控制最近创建的选项卡的WebView(例如刷新,返回等)。所以我的问题是如何控制所有WebView?我花了很多时间试图让它工作,所以我非常感谢任何帮助!如果您还需要我供应,请告诉我。

(我如何尝试查找网页视图并刷新例如:)

WebView mWebView = (WebView) TBrowser.mWebView;
mWebView.refresh();

我尝试将标签设置为webview,并按标签查找webview,但这似乎只适用于一个,之后它只会回到仅适用于新创建的一个......

- 编辑 -

我有

private WebView webViews[]=new WebView[10];
private int p = 0;

现在在MainActivity中全球定义。 每次按下添加标签按钮时都会调用以下内容。

private void addMethod() {
        ++i;

        Intent TBrowser = new Intent(); 
        TBrowser.setClass(this, TBrowser.class);

        tabHost.addTab(tabHost.newTabSpec(Integer.toString(z)).setIndicator("z").setContent(TBrowser));

        ++z;

        test();   
    }

每次调用addMethod时都会调用以下内容。

public void test(){
        webViews[p] = TBrowser.mWebView;
        p++;
    }

我正在通过尝试重新加载来检查它是否有效..(现在只能在第一个标签中使用)

int cT = tabHost.getCurrentTab();
                        if (cT == 0){
                            if (webViews[0] != null){
                                webViews[0].reload();
                            }
                        }
                        else if (cT == 1){
                            if(webViews[1] != null){
                                webViews[1].reload();
                            }
                        }

- -

提前致谢:)

0 个答案:

没有答案