title: Why is EditText.setOnFocusChangeListener firing several times?
body: <p>I'm using an EditText in a row in a ListView. There is no code to programatically request focus. When the ListView is populated none of the EditText views are focused. When I tap on one of them to give it focus, this is the log output:</p>
  
  <pre><code>Comments field focus changed. hasFocus=true
  Comments field focus changed. hasFocus=false
  Comments field focus changed. hasFocus=true
  </code></pre>
  
  <p>This is on a Nexus 7 running Lollipop 5.01 and the soft keyboard. All three lines relate to the exact same EditText View.</p>
  
  <p>If I run the same build on a Nexus 5 also running 5.01 I see this, which is the behaviour I'd expect:</p>
  
  <pre><code>Comments field focus changed. hasFocus=true
  </code></pre>
  
  <p>This is the listener:</p>
  
  <pre><code>    commentsView.setOnFocusChangeListener(new OnFocusChangeListener() {
          @Override
          public void onFocusChange(View v, boolean hasFocus) {
              Timber.i("Comments field focus changed. hasFocus=" + hasFocus);
              }
          }
      });
  </code></pre>
  
  <p>You'll see from the code that aside from logging to Timber (logcat) the event is not doing anything. Why is the View gaining, then losing and then gaining focus again on the N7? I need to use this event to trigger a data save and this behaviour is causing problems.</p>
  
  <p>Any ideas?</p>