0

テキストが変更されたときにメソッドが呼び出されるように、アプリの ediText フィールドが onTextChange イベントに応答するようにします。私は dot42 を使用してアプリを作成していますが、Java で利用できるチュートリアルしか見つかりませんでした。

4

2 に答える 2

4

これは最小限の実装になります。Java と C# の違いのパターンを理解するのに役立つことを願っています。これは本当に些細なことです。

   [Activity]
   public class MainActivity : Activity, Android.Text.ITextWatcher
   {
      protected override void OnCreate(Bundle savedInstance)
      {
         base.OnCreate(savedInstance);
         SetContentView(R.Layouts.MainLayout);

         EditText editText = FindViewById<EditText>(R.Ids.status);
         editText.AddTextChangedListener(this);
      }

      public void AfterTextChanged(Android.Text.IEditable s)
      {
         throw new NotImplementedException();
      }

      public void BeforeTextChanged(Java.Lang.ICharSequence s, int start, int count, int after)
      {
         throw new NotImplementedException();
      }

      public void OnTextChanged(Java.Lang.ICharSequence s, int start, int before, int count)
      {
         throw new NotImplementedException();
      }
   }

インターフェイスの実装は、Visual Studio によって生成されます。

于 2013-11-14T14:14:50.923 に答える
1

Java では、TextWatcher インターフェイスを実装することでそれを行います。 Dot42のドキュメントによると

AddTextChangedListener(ITextWatcher watcher)

Adds a TextWatcher to the list of those whose methods are called whenever this TextView's text changes.` 

したがって、 ITextWatcherを実装し、何かを実行すれば問題AfterTextChangedありません。

于 2013-11-14T13:03:48.613 に答える