|
Изменение темы проекта "Blank Activity"
|
|||
---|---|---|---|
#18+
Здравствуйте! Я хотел поменять тему , что в последствии и сделал , но немного не таким образом как я ранее хотел. В итоге остался вопрос , почему у меня не меняется тема так, как она должна меняться ? Вот варианты которые я пробовал применить, для того что бы поменять тему в программе : 1.Вариант "Вставляем ручками" . Открываем файл - Manifest И в данном случаи вместо "AppTheme" в этой строке - "android:theme="@style/AppTheme" >" вставляем другую тему . Например: "Theme.NoTitleBar.FullScreen" . Это будет выглядеть так - "android:theme="@style/Theme.NoTitleBar.FullScreen" > . Вот код оригинала : Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
Меняем строку: Вариант 1.1 "android:theme="@style/Theme.NoTitleBar.FullScreen" выдает ошибку - Description Resource Path Location Typeerror: Error: No resource found that matches the given name (at 'theme' with value '@style/Theme.NoTitleBar.FullScreen'). AndroidManifest.xml /Progect20 line 11 Android AAPT Problem Вариант 1.2 "android:theme="@android:style/Theme.NoTitleBar.FullScreen" выдает ошибку - Description Resource Path Location Typeerror: Error: No resource found that matches the given name (at 'theme' with value '@android:style/Theme.NoTitleBar.FullScreen'). AndroidManifest.xml /Progect20 line 11 Android AAPT Problem Как я понял , ошибка связанна с тем что компилятор не находит в ресурсах данную тему. Или можно сделать тоже самое , но только с помощь таблицы, в дальнейшем избежав ошибок : 09-03 13:03:39.245: E/Trace(786): error opening trace file: No such file or directory (2) 09-03 13:03:39.595: E/AndroidRuntime(786): FATAL EXCEPTION: main 09-03 13:03:39.595: E/AndroidRuntime(786): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.progect20/com.example.progect20.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.ActivityThread.access$600(ActivityThread.java:141) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.os.Handler.dispatchMessage(Handler.java:99) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.os.Looper.loop(Looper.java:137) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.ActivityThread.main(ActivityThread.java:5041) 09-03 13:03:39.595: E/AndroidRuntime(786): at java.lang.reflect.Method.invokeNative(Native Method) 09-03 13:03:39.595: E/AndroidRuntime(786): at java.lang.reflect.Method.invoke(Method.java:511) 09-03 13:03:39.595: E/AndroidRuntime(786): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 09-03 13:03:39.595: E/AndroidRuntime(786): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 09-03 13:03:39.595: E/AndroidRuntime(786): at dalvik.system.NativeStart.main(Native Method) 09-03 13:03:39.595: E/AndroidRuntime(786): Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 09-03 13:03:39.595: E/AndroidRuntime(786): at android.support.v7.app.ActionBarActivityDelegate.onCreate(ActionBarActivityDelegate.java:110) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.support.v7.app.ActionBarActivityDelegateICS.onCreate(ActionBarActivityDelegateICS.java:57) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:99) 09-03 13:03:39.595: E/AndroidRuntime(786): at com.example.progect20.MainActivity.onCreate(MainActivity.java:14) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.Activity.performCreate(Activity.java:5104) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) 09-03 13:03:39.595: E/AndroidRuntime(786): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144) 09-03 13:03:39.595: E/AndroidRuntime(786): ... 11 more Судя по логу , тут нам говорят что нужно использовать темы связанные с AppCompat ну или наследовать от AppCompat компонента или подобные темы . java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. Так вот , почему у меня выскакивает эта ошибка ? Почему именно с взаимодействием AppCompat я должен использовать темы? Почему нельзя их просто поставить , стандартным образом? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2014, 17:51 |
|
Изменение темы проекта "Blank Activity"
|
|||
---|---|---|---|
#18+
Да, если юзаешь саппорт библиотеку то нужно создать свой стиль, наследуйся от Theme.AppCompat Код: xml 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2014, 22:05 |
|
Изменение темы проекта "Blank Activity"
|
|||
---|---|---|---|
#18+
ДжибсДа, если юзаешь саппорт библиотеку то нужно создать свой стиль, наследуйся от Theme.AppCompat Код: xml 1. 2. 3. 4.
ДжибсДа, если юзаешь саппорт библиотеку то нужно создать свой стиль, наследуйся от Theme.AppCompat Код: xml 1. 2. 3. 4.
Спасибо Разобрался. public class MainActivity extends ActionBarActivity Предусматривает использование тем с *AppCompat.... Если использовать другие темы , будет ошибка. Что бы убрать бар , можно наследовать эту тему public class MainActivity extends Activity - класс создается в проектах которые поддерживают все API. Но, поддержка устройств, ограничена только более новыми версиями ОС. public class MainActivity extends ActionBarActivity - класс создается в проектах которые поддерживают устаревшие АРI. И поддержка устройств не ограниченна , версиями ОС. Пример: <style name="AppTheme" parent="AppBaseTheme"> <item name="android:windowNoTitle">true</item> <item name="android:windowFullscreen">true</item> <!-- All customizations that are NOT specific to a particular API-level can go here. --> </style> ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2014, 02:13 |
|
|
start [/forum/topic.php?fid=13&fpage=24&tid=1331580]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
90ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 255ms |
total: | 438ms |
0 / 0 |