Тема Android не установлена

У меня есть тема, которая отказывается применять к действиям – ни один из стилей не применяется. Если я не предоставил layout_width / layout_height для <Button> он также получит ошибку времени выполнения, показывая, что класс Button не применяется.

/res/values/themes.xml :

 <?xml version="1.0" encoding="utf-8"?> <resources> <style name="Theme" parent="android:style/Theme.Black"> <item name="android:windowNoTitle">true</item> <item name="android:buttonStyle">@style/Button</item> <item name="android:windowBackground">@color/page_background_light</item> <item name="android:textAppearance">@style/TextAppearance</item> </style> </resources> 

/res/values/styles.xml :

 <?xml version="1.0" encoding="utf-8"?> <resources> <style name="TextAppearance" parent="@android:style/TextAppearance"> <item name="android:textSize">12sp</item> <item name="android:textColor">@color/darkblue</item> </style> <style name="Button" parent="@android:style/Widget.Button"> <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">wrap_content</item> <!--<item name="android:textColor">#3C2F4F</item> <item name="android:textSize">20dip</item>--> </style> </resources> 

И соответствующие настройки манифеста :

 <application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@style/Theme"> 

Какая очевидная ошибка, которую я пропускаю?

Solutions Collecting From Web of "Тема Android не установлена"

Я тоже борется с этим, и думаю, что, наконец, нашел, что может быть проблемой – возможно, это одно и то же.

У меня была настраиваемая тема, определенная в папке res\values , но не в values-v11 и values-v14 . Который, я думаю, сделал это так, что в некоторых устройствах (особенно 2, которые я тестировал!), Тема не могла применяться, потому что ее не было.

Теперь я вижу, что свойства, установленные в моей настраиваемой теме (применяются на уровне приложения), вступают в силу.

Мне пришлось явно определять тему для каждого <activity> .

Согласно этому ответу , представляется, что невозможно предоставить layout_width и layout_height через стили. Пока он компилируется, исключение, которое он вызывает, это:

 E/AndroidRuntime(4117): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example/com.example.MainActivity}: java.lang.RuntimeException: Binary XML file line #79: You must supply a layout_width attribute. 

Я не уверен, почему это так, но может быть обходной путь. Как следует из этого вопроса , вы можете указать ссылку как параметр ширины и высоты.

Опять же, мой опыт в том, что Android не поддерживает поддержку размеров виджета через стили.

Просто из любопытства. Попробуйте переименовать свою тему в нечто вроде FooBar.

Выясните здесь очевидное, но убедитесь, что ваша кнопка использует правильный стиль.

EDIT: Я не уверен, что это была просто опечатка в вопросе, но в вашей основной теме вы неправильно ссылаетесь на стиль Theme.Black от Android. Ваш код говорит:

 <style name="Theme" parent="android:style/Theme.Black"> 

Когда это должно сказать:

 <style name="Theme" parent="@android:style/Theme.Black"> 

Я чувствую, что Lint или компилятор хватит на вас за это, прежде чем запускать приложение, но, возможно, это поможет.