如何仅使用Android webview显示网页的一部分?

时间:2014-03-11 22:11:02

标签: android html webview

我实际上没有显示我想要的网页部分,但是按钮有效。登录按钮无法正常工作!

这是我凌乱的代码。如果有人能告诉我发生了什么,我会很高兴。

public class MainActivity extends Activity {

HtmlCleaner cleaner = new HtmlCleaner();
CleanerProperties props = cleaner.getProperties();

int reloadCount = 0;
boolean reload = true;
String CurURL = "";
String Html = " ";

/**
 * Called when the activity is first created.
 */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    openMistar();
}

public void openMistar() {

    WebView Mistar = new WebView(this);
    setTitle("Student Connection");
    setVisible(true);
    Mistar.getSettings().setSupportZoom(false);
    setContentView(Mistar);
    Mistar.getSettings().setJavaScriptEnabled(true);
    Mistar.getSettings().setLoadWithOverviewMode(true);

    Mistar.loadUrl("https://zangleweb.resa.net/Woodhaven/Studentconnect/");
    Mistar.setWebViewClient(new WebViewClient() {
        @Override
        public void onScaleChanged(WebView view, float oldScale, float newScale) {
            Log.w("Scale", "Scale changed");
            reload = false;
        }

        @Override
        public void onPageFinished(WebView view, String url) {
            CurURL = view.getUrl();

            if (CurURL != null) {
                if (CurURL.equals("https://sisweb.resa.net/StudentPortal/Home/PortalMainPage")) {
                    view.getSettings().setUseWideViewPort(true);
                    view.getSettings().setLoadWithOverviewMode(true);
                    view.getSettings().setSupportZoom(true);

                    if (reload) {
                        view.reload();
                        reload = false;
                    }

                    Log.i("WebView", "Logged In");

                }
                if (CurURL.equals("https://sisweb.resa.net/StudentPortal/")) {

                    try {
                        Document doc = Jsoup.connect("https://zangleweb.resa.net/Woodhaven/Studentconnect/").get();
                        Elements newsRawTag = doc.select("#loginform");
                        String newPage = newsRawTag.html();
                        Log.i("HTML", "content: " + doc);
                        TagNode tagNode = new HtmlCleaner(props).clean(newPage);
                        SimpleHtmlSerializer htmlSerializer = new SimpleHtmlSerializer(props);
                        view.loadData(htmlSerializer.getAsString(tagNode),
                                "text/html", "utf-8");
                    } catch (IOException ex) {

                    }
                    view.setHorizontalScrollBarEnabled(false);
                    view.setVerticalScrollBarEnabled(false);
                    view.getSettings().setSupportZoom(false);

                }
            }
        }

    });


}

}

1 个答案:

答案 0 :(得分:0)

该网站上的登录按钮绑定到Document ready上的jquery调用。 您需要确保在html底部下载文档就绪脚本以及jquery.form.js - 用于检查表单字段。