title: How to enable/disable MenuItem based on change in class variable
body: <p>I have an options menu in an <code>Activity</code> with three <code>MenuItems</code></p>
  
  <ul>
  <li>create</li>
  <li>select</li>
  <li>delete</li>
  </ul>
  
  <p>When there is no item currently selected I disable the <code>MenuItem</code> for delete.</p>
  
  <pre><code>@Override
  public boolean onCreateOptionsMenu(Menu menu) {
      super.onCreateOptionsMenu(menu);
      final MenuInflater inflater = getMenuInflater();
      inflater.inflate(R.layout.basic_menu, menu);
      this.deleteCharMenu = menu.findItem(R.id.basic_menu_deletechar);
      this.deleteCharMenu.setEnabled(this.current != null);
      return true;
  }
  </code></pre>
  
  <p>However <code>onCreateOptionsMenu</code> is not called every time the menu is opened (try and error got me this result). </p>
  
  <p>So I stored the <code>MenuItem</code> in a class variable to be able to change its state whenever <code>this.current</code> changed its value. </p>
  
  <p>Is there a more elegant method to ensure that the correct <code>MenuItems</code> are enabled and disabled? I am hoping for some kind of listener I can use?</p>