如何在webview中打开twitter hash标签链接?

发布于 2025-01-03 03:23:15 字数 1649 浏览 3 评论 0原文

我正在制作一个 Android 应用程序,其中我必须显示 twitter 的哈希标签链接,但是当我在自定义的 Web 视图中加载此应用程序时,它将在默认浏览器中打开。你能帮助我如何在 Web 视图中而不是在默认浏览器?

链接是:https://mobile.twitter.com/search/%23nokia

谢谢...

    WebViewClient yourWebClient = new WebViewClient()
    {
    /* Override page so it's load on my view only */
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url)
    {
    // This line we let me load only pages inside Firstdroid Webpage
    if ( url.contains("firstdroid") == true )
    /* Load new URL Don't override URL Link */
    return false;

    // Return true to override url loading (In this case do nothing).
    return true;
    }
    };


    // Get Web view
    mWebView = (WebView) findViewById( R.id.WebView ); //This is the id you gave
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setSupportZoom(true); //Zoom Control on web (You don't need this
    //if ROM supports Multi-Touch
    mWebView.getSettings().setBuiltInZoomControls(true); //Enable Multitouch if supported by ROM
    mWebView.setWebViewClient(yourWebClient);

    // Load URL
    Log.v("", ""+web2);
    mWebView.loadUrl(web2);
    btn.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    Log.v("", "EXECUTED");
    //website.this.finish();
    Intent ii = new Intent(getParent(), Socialsites.class);
    TabGroupActivity parentActivity3 = (TabGroupActivity)getParent();



    // ii.putExtra("WEB", six.get(arg2));





    parentActivity3.startChildActivity("bb", ii);
    }

});

I am making an android app in which i have to show Hash Tag link of twitter But when i load this in our customized webview it will open in the default browser.Can you help me how to open this in the web view rather then in the default Browser?

Link is: https://mobile.twitter.com/search/%23nokia

Thanks...

    WebViewClient yourWebClient = new WebViewClient()
    {
    /* Override page so it's load on my view only */
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url)
    {
    // This line we let me load only pages inside Firstdroid Webpage
    if ( url.contains("firstdroid") == true )
    /* Load new URL Don't override URL Link */
    return false;

    // Return true to override url loading (In this case do nothing).
    return true;
    }
    };


    // Get Web view
    mWebView = (WebView) findViewById( R.id.WebView ); //This is the id you gave
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setSupportZoom(true); //Zoom Control on web (You don't need this
    //if ROM supports Multi-Touch
    mWebView.getSettings().setBuiltInZoomControls(true); //Enable Multitouch if supported by ROM
    mWebView.setWebViewClient(yourWebClient);

    // Load URL
    Log.v("", ""+web2);
    mWebView.loadUrl(web2);
    btn.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    Log.v("", "EXECUTED");
    //website.this.finish();
    Intent ii = new Intent(getParent(), Socialsites.class);
    TabGroupActivity parentActivity3 = (TabGroupActivity)getParent();



    // ii.putExtra("WEB", six.get(arg2));





    parentActivity3.startChildActivity("bb", ii);
    }

});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

吾家有女初长成 2025-01-10 03:23:15

在 shouldOverrideUrlLoading() 中编写 load.loadUrl(url) 如下:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) 
{
    // TODO Auto-generated method stub
    view.loadUrl(url);
    return true;
}

Write load.loadUrl(url) inside the shouldOverrideUrlLoading() as:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) 
{
    // TODO Auto-generated method stub
    view.loadUrl(url);
    return true;
}
女皇必胜 2025-01-10 03:23:15

确保您有权

在清单中访问互联网。

<uses-permission android:name="android.permission.INTERNET" />

xml 布局

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
/>

并加载您的 URL

WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl("https://mobile.twitter.com/search/%23nokia");

Make sue you have the permissions to access Internet

In Manifest.

<uses-permission android:name="android.permission.INTERNET" />

xml layout

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
/>

and to load your URL

WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl("https://mobile.twitter.com/search/%23nokia");
原谅我要高飞 2025-01-10 03:23:15

您如何使用:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) 
{
    view.loadUrl("https://mobile.twitter.com/searches");
    needReload = true;
    return true;
}

然后您将函数 onPageFinished 重载为:

    @Override
    public void onPageFinished(WebView view, String url) {
        setProgressBarIndeterminateVisibility(false);
        progess.setVisibility(View.GONE);
        if(needReload){
            view.loadUrl("javascript:location.search = \"q=%23nokia\"");
            needReload = false;
        }
    }

它将通过搜索诺基亚术语重新加载页面。
您可以将 nokia 替换为:

    view.loadUrl("javascript:location.search = \"q=%23" +searchTerms +"\"");

以获得更灵活的东西。

How about you use:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) 
{
    view.loadUrl("https://mobile.twitter.com/searches");
    needReload = true;
    return true;
}

And then you overload the function onPageFinished as:

    @Override
    public void onPageFinished(WebView view, String url) {
        setProgressBarIndeterminateVisibility(false);
        progess.setVisibility(View.GONE);
        if(needReload){
            view.loadUrl("javascript:location.search = \"q=%23nokia\"");
            needReload = false;
        }
    }

It will reload the page with a search for nokia term.
You can replace nokia by :

    view.loadUrl("javascript:location.search = \"q=%23" +searchTerms +"\"");

To get something more flexible.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文