标签: webviewclient

寻找具有多个WebView的Android ViewFlipper示例

我相信大家都知道.设置WebView需要创建Webview浏览器客户端,设置属性并将资源加载到浏览器客户端.我已经创建了几个Android应用程序.

我现在想要尝试的是横向扫描不同的网络资源.想象一下一个网址的主要主页,另一个网址的类别页面和另一个网址的搜索页面.我想创建一个UI构造,允许从主要主页url视图滑动到显示类别url的视图,然后是另一个用搜索资源显示视图的滑动(想想新的android市场UI - 向左滑动显示类别) .

我已经阅读了ViewFlipper和几个帖子,但是我无法找到如何将浏览器实例化与视图翻转/滑动集成的综合示例.

问题:有人可以提供一个示例,可以执行上述的一些变化和/或提供一个示例的链接,该示例显示浏览器实例化与Web视图翻转/滑动.

随意纠正我建议的实现...可能有一个更好的方法来做到这一点,我还没有考虑...

android webview swipe webviewclient

5
推荐指数
1
解决办法
2万
查看次数

在android 2.x上获取webViewClient.shouldInterceptRequest()

我重写webViewClient.shouldInterceptRequest()返回资产文件夹中的图像和js文件等常用资源.但这可用于android> = 3..还有用于android 2.x的替代方法

我发现onLoadResource()提供类似的行为,但其返回类型是无效的

android android-webview webviewclient

5
推荐指数
1
解决办法
3619
查看次数

Android WebViewClient回调调用过于频繁

当我打电话时,WebView#loadUrl我希望我只能打一个WebViewClient#onPageFinished电话而不WebViewClient#shouldOverrideUrlLoading打电话.但是,我得到一个WebViewClient#shouldOverrideUrlLoading(我通过始终调用WebView#loadUrl并返回true来实现)然后WebViewClient#onPageFinished使用相同的URL 进行两次调用.

我正在加载的页面使用了很多ajax请求.ajax请求是否会调用WebViewClient?我的页面中没有任何meta-refreshes.

这非常令人沮丧.难道我做错了什么?

android webview webviewclient

4
推荐指数
1
解决办法
1万
查看次数

Android将触摸事件传递给WebView的内部内容

我有一个webview,我将onTouchListener设置为on以便捕获实际视图上的滑动事件。

我还在WebView上设置了WebViewClient,以便在单击Webview内的某些链接时覆盖“网址加载”。

问题是OnTouch处理程序总是始终首先接收操作,即使我返回false(如果不是轻扫),它也不会将touch事件传递给内部html内容,因此从不实际单击链接。如果我删除了onTouchListener,它可以正常工作。是否可以通过某种方式将触摸事件传递给内容?

android webview ontouchlistener webviewclient

4
推荐指数
1
解决办法
1万
查看次数

在WebView中侦听URL片段ID更改

似乎WebInClcept方法(如shouldInterceptRequest(),onPageStarted()和shouldOverrideUrlLoading())仅侦听导致WebView加载新页面的URL更改.有没有办法在WebView上检测片段ID的URL更改,即index.html#fragment_id?

android android-webview webviewclient

4
推荐指数
1
解决办法
2094
查看次数

什么时候onNewPicture()被调用?

onNewPicture()的文档只说:

通知听众图片已更改

我的问题是:图片什么时候改变?

我注意到有些网页生成了几十个onNewPicture(),所以很明显,在WebView上渲染页面的过程中,"图片"会多次发生变化.

是什么让WebView图片发生变化?

我没有看到任何生成少于2个onNewPicture()调用的页面页面,因此对于任何给定的HTML页面,onNewPicture()是否保证被多次调用?

android webview webviewclient

3
推荐指数
1
解决办法
1453
查看次数

检查某个 url 是否加载完成,然后在 WebView 中打开另一个

我想检查某个 URL 是否已完成加载,然后加载另一个 URL,如果该新 url 已完成加载,请执行某些操作,如何?

我知道如何检查某个 URL 是否已完成加载,如下所示:

webView.setWebViewClient(new WebViewClient() {

    public void onPageFinished(WebView view, String url) {
        // do stuff here
    }
    });
Run Code Online (Sandbox Code Playgroud)

但我想要的是:

 if url1 finished loading:
    load url2
    if url2 finished loading:
       //do some stuff here
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

java android android-webview webviewclient

3
推荐指数
1
解决办法
1222
查看次数

Android - 在webview中加载PDF

我有这个webview代码,我希望能够在用户点击PDF链接时打开PDF文件.这是代码,你能告诉我我必须把它放在PDF区域吗?我已经尝试了很多不同的方法,我根本无法查看PDF.谢谢您的帮助.

webview.setWebViewClient ( new WebViewClient() {
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        // do your handling codes here, which url is the requested url
        // probably you need to open that url rather than redirect:
        if (url.startsWith("tel:")) {
            startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(url)));
        } else if (url.startsWith("mailto:")) {
            url = url.replaceFirst("mailto:", "");
            url = url.trim();
            Intent i = new Intent(Intent.ACTION_SEND);
            i.setType("plain/text").putExtra(Intent.EXTRA_EMAIL,
                    new String[]{url});
            startActivity(i);

        } else if (url.startsWith("geo:")) {
            try {
            } catch (Exception e) {
                System.out.println(e);
            }

        } else if …
Run Code Online (Sandbox Code Playgroud)

java pdf android webview webviewclient

2
推荐指数
1
解决办法
2万
查看次数

Webview shouldoverrideurlloading不起作用

我在我的应用程序中有这个代码:

public class Home extends Activity{
@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.home);
    final ProgressDialog progressBar;
    if(isOnline()){
        WebView webView = (WebView) findViewById(R.id.home_web);
        webView.setBackgroundColor(Color.parseColor(getString(R.color.colore_bg)));
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setBuiltInZoomControls(true);
        webView.getSettings().setPluginsEnabled(true);
        webView.setWebViewClient(new MyWebViewClient());
        progressBar = ProgressDialog.show(this,getString(R.string.caricamento),getString(R.string.attendere));
        webView.setWebViewClient(new WebViewClient(){
            public void onPageFinished(WebView view, String url) {
                if (progressBar.isShowing()) {
                    progressBar.dismiss();
                }
            }
        });
        webView.loadUrl("http://www.mysite.com/android.php");
    }else{
        Toast.makeText(this,getString(R.string.no_connessione),Toast.LENGTH_LONG).show();
    }
}
private class MyWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
            System.out.println("here");
        if (Uri.parse(url).getHost().equals("mysite.com")) {
            // This is my web site, so do not override; …
Run Code Online (Sandbox Code Playgroud)

android hyperlink android-webview webviewclient

2
推荐指数
1
解决办法
7684
查看次数

如何处理webview中的错误?

我想加载一个网页.

private class MyJavaScriptInterface {

    private MyJavaScriptInterface () {
    }

    public void setHtml(String contentHtml) {

        if (contentHtml != null && contentHtml.trim().length() > 0) {
            //Do something
        }
    }
}
private WebViewClient webViewClient = new WebViewClient() {

    @Override
    public void onPageFinished(WebView view, String url) {

        view.loadUrl("javascript:window.ResponseChecker.setHtml"
            + "(document.body.innerHTML);");
        if (progressDialog != null && progressDialog.isShowing()) {
            progressDialog.dismiss();
        }
    }

    public void onReceivedSslError(WebView view, SslErrorHandler handler,
        SslError error) {
        handler.proceed();
    }

    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
        Log.e("ProcessPayment", …
Run Code Online (Sandbox Code Playgroud)

android webview webviewclient

2
推荐指数
1
解决办法
1万
查看次数