android - HelloWebViewClient 无法解析为类型

标签 android webclient

我遵循了关于 http://developer.android.com/resources/tutorials/views/hello-webview.html 的指南然后创建我自己的 EditText 字段和一个按钮。代码应该解释这一切,我的问题是我不断收到“HelloWebViewClient 无法解析为类型”错误,有什么建议吗?提前致谢!

    package com.text.text;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.view.View;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;

public class test extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.alt);
        final EditText edittext = (EditText) findViewById(R.id.edittext);
        final Button button = (Button) findViewById(R.id.okay);
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Editable text = edittext.getText();
                String Tekst = text.toString();
                setContentView(R.layout.main);
                WebView mWebView;
                mWebView = (WebView) findViewById(R.id.webview);
                mWebView.getSettings().setJavaScriptEnabled(true);
                mWebView.loadUrl(Tekst);
                mWebView.setWebViewClient(new HelloWebViewClient());
                class HelloWebViewClient extends WebViewClient {
                    @Override
                    public boolean shouldOverrideUrlLoading(WebView view, String url) {
                        view.loadUrl(url);
                        return true;

                    }
        };
    }
});
}}

最佳答案

如果你把那个类放在外面会怎样?

public class test extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.alt);
        final EditText edittext = (EditText) findViewById(R.id.edittext);
        final Button button = (Button) findViewById(R.id.okay);
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Editable text = edittext.getText();
                String Tekst = text.toString();
                setContentView(R.layout.main);
                WebView mWebView;
                mWebView = (WebView) findViewById(R.id.webview);
                mWebView.getSettings().setJavaScriptEnabled(true);
                mWebView.loadUrl(Tekst);
                mWebView.setWebViewClient(new HelloWebViewClient());
             }
        });
     }

    private class HelloWebViewClient extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    }

}

关于android - HelloWebViewClient 无法解析为类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4529044/

相关文章:

c# - 使用 Webclient 的 SharePoint 身份验证

windows-phone-7 - 如何忽略 Windows Phone 7 中的证书错误?

android - 用于移动解决方案的 VR 耳机 (iOS\Android)

Androidx数据存储测试: Ensure that you are only creating a single instance of datastore for this file

java - fragment 中的 RecyclerView 在设备屏幕旋转时崩溃

asp.net-mvc - 使用 C# 以编程方式向 MVC Controller 验证 Azure Ad/OpenId 并获取重定向 uri

java - ByteBuddy - 无法拦截来自父类(super class)的静态方法

android - 使用导航组件为每个 fragment 自定义工具栏

c# - 如何使用 WebClient.UploadString 方法下载图片?

C# WebClient 使用 UploadString 从同样在 C# 中的 ApiController 调用 HttpPost 方法。 415 或 400 错误