title: Switch/case with R.id.XXXX in android doesn't work
body: <p>I have problems with this type of code</p>
  
  <pre><code>@Override
  public boolean onOptionsItemSelected(MenuItem item) {
      switch (item.getItemId()) {
      case R.id.menu_sign_out_all:
          doHardShutdown();
          return true;
      case R.id.menu_add_account:
       //   showExistingAccountListDialog();
          return true;
      case R.id.menu_settings:
          Intent sintent = new Intent(this, SettingActivity.class);
          startActivityForResult(sintent,0);
          return true;
      case R.id.menu_import_keys:
          importKeyStore();
          return true;
     // case R.id.menu_exit:
    //      signOutAndKillProcess();
  
        //  return true;
      }
      return super.onOptionsItemSelected(item);
  }
  </code></pre>
  
  <p>It happens in all code where is some switch/case.
  On every:</p>
  
  <pre><code>case R.id.XXX
  </code></pre>
  
  <p>eclipse returns me an error:<strong>"case expressions must be constants expressions"</strong></p>
  
  <p>Then I tried to delete R.java, clean, and regenerate it, but didn't work.
  How can I fix it?</p>
  
  <p>Thats part of the xml:</p>
  
  <pre><code>&lt;menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"&gt;
  &lt;item
          android:id="@+id/menu_add_account"
          android:title="@string/menu_add_account"
           android:icon="@android:drawable/ic_menu_add"
                   app:showAsAction="always|withText"
          &gt;
  &lt;/item&gt;
  </code></pre>