title: Can't use Theme.Holo for styles of my first Android app
body: <p>I'm developing my first Android app following the official Android tutorial, so I'm new, but when I try to styling the action bar with the <code>Theme.Holo</code> my app crash down during the starting, into the log I've the following message:</p>
  
  <blockquote>
    <p>java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.</p>
  </blockquote>
  
  <p>I know that if I use the <code>Theme.AppCompact</code> it's working, but in the tutorial does not mention problems like this one with the Theme.Holo, and does not give a solution, because if I use the Theme.AppCompact the app works, but I can't modify the style of the action bar with a custom color or with a background image.</p>
  
  <p>I've followed exactly the tutorial until this point: <a href="https://developer.android.com/training/basics/actionbar/styling.html" rel="nofollow">https://developer.android.com/training/basics/actionbar/styling.html</a>
  make an exception for the minSdkVersion, in the tutorial is set to 8, I've changed the value to 14 because gives me other compatibility problems.</p>
  
  <p>This is the <strong>AndroidManifest.xml</strong></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.mycompany.myfirstapp" &gt;
  
  &lt;application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" &gt;
      &lt;activity
          android:name=".MyActivity"
          android:label="@string/app_name"
          android:theme="@style/CustomActionBarTheme" &gt;
          &lt;intent-filter&gt;
              &lt;action android:name="android.intent.action.MAIN" /&gt;
  
              &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
          &lt;/intent-filter&gt;
      &lt;/activity&gt;
      &lt;activity
          android:name=".DisplayMessageActivity"
          android:label="@string/title_activity_display_message"
          android:parentActivityName=".MyActivity" &gt;
          &lt;meta-data
              android:name="android.support.PARENT_ACTIVITY"
              android:value="com.mycompany.myfirstapp.MyActivity" /&gt;
      &lt;/activity&gt;
  &lt;/application&gt;
  &lt;uses-sdk android:minSdkVersion="14" /&gt;
  
  &lt;/manifest&gt;
  </code></pre>
  
  <p><strong>Themes.xml</strong></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;resources&gt;
  
  &lt;style name="CustomActionBarTheme"
      parent="@android:style/Theme.Holo.Light.DarkActionBar"&gt;
      &lt;item name="android:actionBarStyle"&gt;@style/MyActionBar&lt;/item&gt;
  &lt;/style&gt;
  
  
  &lt;style name="MyActionBar"
      parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse"&gt;
      &lt;item name="android:background"&gt;@drawable/actionbar_background&lt;/item&gt;
  &lt;/style&gt;
  &lt;/resources&gt;
  </code></pre>
  
  <p><strong>MyActivity.java</strong></p>
  
  <pre><code>public class MyActivity extends AppCompatActivity {
      public final static String EXTRA_MESSAGE = "com.mycompany.myfirstapp.MESSAGE";
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_my);
      }
  
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
          // Inflate the menu items for use in the action bar
          MenuInflater inflater = getMenuInflater();
          inflater.inflate(R.menu.main_activity_actions, menu);
          return super.onCreateOptionsMenu(menu);
      }
  
      @Override
      public boolean onOptionsItemSelected(MenuItem item) {
          // Handle action bar item clicks here. The action bar will
          // automatically handle clicks on the Home/Up button, so long
          // as you specify a parent activity in AndroidManifest.xml.
          int id = item.getItemId();
  
          // Handle presses on the action bar items
          switch (id) {
              case R.id.action_search:
                  //openSearch();
                  Log.i("MyActivity", "SEARCH PRESSED");
                  return true;
              case R.id.action_settings:
                  //openSettings();
                  Log.i("MyActivity", "SETTINGS PRESSED");
                  return true;
              default:
                  return super.onOptionsItemSelected(item);
          }
      }
  
      /** Called when the user clicks the Send button */
      public void sendMessage(View view) {
          Intent intent = new Intent(this, DisplayMessageActivity.class);
          EditText editText = (EditText) findViewById(R.id.edit_message);
          String message = editText.getText().toString();
          intent.putExtra(EXTRA_MESSAGE, message);
          startActivity(intent);
      }
  }
  </code></pre>
  
  <p><strong>activity_my.xml</strong></p>
  
  <pre><code>&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="horizontal" &gt;
  
  &lt;EditText android:id="@+id/edit_message"
      android:layout_weight="1"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:hint="@string/edit_message" /&gt;
  &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/button_send"
      android:onClick="sendMessage"/&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p><strong>main_activity_actions.xml</strong></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;menu xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"&gt;
  &lt;!-- Search, should appear as action button --&gt;
  &lt;item android:id="@+id/action_search"
      android:icon="@drawable/ic_action_search"
      android:title="@string/action_search"
      app:showAsAction="ifRoom" /&gt;
  &lt;!-- Settings, should always be in the overflow --&gt;
  &lt;item android:id="@+id/action_settings"
      android:title="@string/action_settings"
      app:showAsAction="never" /&gt;
  &lt;/menu&gt;
  </code></pre>
  
  <p><strong>styles.xml</strong></p>
  
  <pre><code>&lt;resources&gt;
  
  &lt;!-- Base application theme. --&gt;
  &lt;style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"&gt;
      &lt;!-- Customize your theme here. --&gt;
  &lt;/style&gt;
  
  &lt;/resources&gt;
  </code></pre>