Как открыть Twitter хэш-тег Ссылка в веб-представлении? - PullRequest
3 голосов
/ 06 февраля 2012

Я делаю приложение для Android, в котором мне нужно показать ссылку на Hash Tag в Твиттере. Но когда я загружу это в наше настраиваемое веб-представление, оно откроется в браузере по умолчанию.тогда в браузере по умолчанию?

Ссылка: 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);
    }

});

Ответы [ 3 ]

1 голос
/ 06 февраля 2012

Запишите load.loadUrl (url) внутри shouldOverrideUrlLoading () как:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) 
{
    // TODO Auto-generated method stub
    view.loadUrl(url);
    return true;
}
1 голос
/ 06 февраля 2012

У вас есть права доступа к Интернету

В манифесте.

<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");
0 голосов
/ 01 марта 2012

Как насчет использования:

@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.
Вы можете заменить Nokia на:

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

Чтобы получить что-то более гибкое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...