I've been trying to set a holo theme in Android, but I haven't been able to get it to recognize it. Any ideas?
Posted is my manifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:theme="@android:style/Theme.Holo">
<activity
android:name=".TestActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
It gives me the red line under @android:style/Theme.Holo
even if I change the minSdkVersion to 11. Any ideas?
Update:
I changed the line <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15"/>
to <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15"/>
and I am still getting the same error.
Update 2:
This ended up being that my target api was specified correctly in the manifest, but not in project properties. Weird, but now as is well.
The Holo theme needs to be updated in all of the style folders. Check under the values folder, values-sw600dp, values-sw720dp-land, values-v11 and values-v14. The theme on values-v14 overrides all other themes on the higher API's.
Eclipse is giving you an error because SDK versions 7-10 won't know what
Theme.Holo
is. You need to provide separate styles for both platforms to ensure that the correct style will be found at runtime.In your
res/values/styles.xml
file, create the following style:In your
res/values-v11/styles.xml
file, create the following style:In your
AndroidManifest.xml
file, use the following line for your application's theme:you are trying to use the Holo theme for API Low than Android 4.0 that's why you get the red Line you can: