在Android中实现查找Webview的先前功能

时间:2017-03-06 08:20:07

标签: android search webview

我制作了一个Xamarin Android应用程序,用于在webview中加载网页。我在其中使用了webview.FindAll和webview.FindNext。有谁知道如何在webview中实现Find Previous。这是我的代码:

   using Android.App;
   using Android.Widget;
   using Android.OS;
   using Android.Views;
   using System;
    using Java.Lang.Reflect;
   using System.Collections.Generic;

    namespace App1
   {
          [Activity(Label = "App1", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{

    WebView WebView;
    private LinearLayout container;
    private Button nextButton, SearchButton;
    private EditText findBox;
    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);
        SetContentView(Resource.Layout.Main);
        WebView = FindViewById<WebView>(Resource.Id.webview);
        nextButton = FindViewById<Button>(Resource.Id.btnNext);
        SearchButton = FindViewById<Button>(Resource.Id.btnPrev);
        findBox = FindViewById<EditText>(Resource.Id.Search);
        findBox.SetBackgroundColor(Android.Graphics.Color.White);
        findBox.SetTextColor(Android.Graphics.Color.Black);
        WebView.Settings.JavaScriptEnabled = true;
        WebView.LoadUrl("http://athena.fhict.nl/users/i298536/Index.html");
        Search();

}


    private void Search()
    {

        nextButton.Click += delegate

         { WebView.FindNext(true);


         };





        SearchButton.Click += delegate

        {
           WebView.FindAll(findBox.Text.ToString());




            try
            {

                Method m = WebView.Class.GetMethod("setFindIsUp", Java.Lang.Boolean.Type);
                m.Invoke(WebView, true);
            }
            catch (Exception ignored) { }

        };







    }
}

}

1 个答案:

答案 0 :(得分:3)

    WebView.FindNext(false); 

它可以回到之前找到的单词。  而

        WebView.FindNext(true); 

是下一个找到的词。

我为那些仍在寻找答案的人发布了这个