Diese Handler-Klasse sollte statisch sein, da sonst möglicherweise Lecks auftreten: final Handler

Bei der folgenden Code-Eclipse-Generierung wird eine Warnung ausgegeben: "Diese Handler-Klasse sollte statisch sein, da sonst möglicherweise Lecks auftreten."

public class MyActivity extends Activity implements Runnable
 {
   final Handler handler = new Handler()
    {
      @Override
      public void handleMessage( Message message)
       {
         String sResult = (String) message.obj;
         if( (sResult != null) && (sResult != ""))
           {
             MyNonStatic = (TableLayout) findViewById( R.id.tableLayout); // any non-static method
           }
         return;
       }
    };


   public void run()
    {
      final Message message = handler.obtainMessage( 1, MyFunction( context));
      handler.sendMessage( message);
    }

   public String MyFunction( Context context)
    {
      return "MyNewString";
    }
  }

Ich überprüfe viele Themen vor Ort, bekomme aber keine Lösung. Bitte helfen Sie mir für diesen Code?

Hinzufügen: Ich muss eine nicht statische Methode (zum Beispiel findViewById ()) in handleMessage () aufrufen!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage