Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 62
#1

Вылет приложения из-за android:background - Программирование Android

28.03.2013, 13:36. Просмотров 1778. Ответов 14
Метки нет (Все метки)

Доброго времени суток.
Прошу помощи вот в чем:
Приложение состоит из нескольких активити, из главного можно перейти на одно из двух "дочерних" и из них назад в главное, переход на "дочерние" с помощью:
Java
1
2
3
4
5
6
switch (v.getId()) 
        {
        case R.id.button1:
            Intent intent = new Intent(this, GameActivity.class);
            startActivity(intent);
...
Активити которые открываются по кнопке созданы по всем правилам, которые я вычитывал из кучи статей и инструкций.
Появилась необходимость создания темы:
XML
1
2
3
<style name="MyTheme" >
        <item name="android:background">@drawable/planet</item>
</style>
И тут возникает проблема при переходе на второе или третье активити - приложение скоропостижно закрывается. Т. е. без темы приложение успешно переходит с одного активити на другой.
При написании в манифесте
XML
1
android:theme="@style/MyTheme"
для всего приложения - вылеты, для всех активити - вылеты, для всех активити кроме главной - все работает.
Так же прописывал
XML
1
android:background="@drawable/planet"
в .xml каждой активити, и тот же результат, если не ставить этот код на главную активити, все будет работать.
Так же при удалении кода с темой в манифесте и постановке кода фона во все активити, Eclipse выдает предупреждение: Possible overdraw: Root element paints background @drawable/planet with a theme that also paints a
background (inferred theme is @style/MyTheme), изначально я подумал что предупреждает о перерисовке темы, но когда ее нет, возмущаться вроде не на что. В гугле объяснения варнинга не нашел.

А теперь вопрос: хотелось бы видеть на всех активити один и тот же фон. Как это воплотить без вылетов приложения способами описанными выше, или может есть другой способ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2013, 13:36     Вылет приложения из-за android:background
Посмотрите здесь:

Вылет приложения сделанного на Android Studio - Программирование Android
Здравствуйте! Создал проект на AndroidStudio, создал apk. Скинул на телефон, установил... При запуске программы, она тут же закрывается и...

Вылет приложения с MediaPlayer - Программирование Android
Использую один MediaPlayer. Даю ему разный звук при нажатии на каждую из 5 кнопок вот так: @Override public void...

Вылет приложения при работе с jsoup - Программирование Android
приложение вылетает на строках : String html = &quot;&lt;html&gt;Some html text&lt;/html&gt;&quot;; Document doc = Jsoup.parse(html);либу пробовал по разному...

Непонятный вылет приложения при установки значения в NumberPicker - Программирование Android
Доброго времени суток. Никак не получается не передать значение, ни получить значения NumberPicker. Программа вылетает при нажатии на...

Вылет приложения при запуске после загрузки шрифта - Программирование Android
Android Studio 2.3 В папке \app\src\main\ (рядом с манифестом) создал папку assets\fonts и положил файл ds-digit.TTF При добавлении...

Вылет приложения при использования бокового меню. О чем говорят логи - Программирование Android
Помогите разобраться с ошибкой при работе с боковым меню. В лог выводит следующую информацию: 10-14 19:14:05.209:...

Сборка Android приложения - Программирование Android
Всем привет. Возникла проблемка. Мне необходимо собрать Android приложение так, чтобы его можно было запустить на любом PC. Подсказать...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
c4sp3r
0x5B4C322291BD52AE
92 / 92 / 5
Регистрация: 04.03.2013
Сообщений: 295
28.03.2013, 14:11     Вылет приложения из-за android:background #2
GSUR, в свойствах layout для каждой активити прописать

XML
1
android:background="@drawable/planet"
или такой вариант не подходит?

Если нужно через стили почитай статью например тут:
http://developer.alexanderklimov.ru/android/theme.php
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 62
28.03.2013, 14:14  [ТС]     Вылет приложения из-за android:background #3
c4sp3r, в том то и дело что при записи в свойствах layout происходят вылеты и этот непонятный варнинг, про создание стилей как раз это и читал =) но ничего не выходит...
Вот полный код стиля:
XML
1
2
3
4
5
6
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="MyTheme" 
        > <!-- ololo -->
        <item name="android:background">@drawable/planet</item>       
    </style>
</resources>
c4sp3r
0x5B4C322291BD52AE
92 / 92 / 5
Регистрация: 04.03.2013
Сообщений: 295
28.03.2013, 14:49     Вылет приложения из-за android:background #4
GSUR, а если так

/res/values/styles.xml
XML
1
2
3
4
5
<!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
        <item name="android:windowBackground">@drawable/planet</item>
    </style>
ну и в манифесте эту тему выбрать.
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 62
28.03.2013, 16:47  [ТС]     Вылет приложения из-за android:background #5
Нет всеравно вылетает, проблема как раз в прорисовке фона видимо. Без задействования картинки все нормально работает.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.03.2013, 17:28     Вылет приложения из-за android:background #6
смотрите логи.
c4sp3r
0x5B4C322291BD52AE
92 / 92 / 5
Регистрация: 04.03.2013
Сообщений: 295
28.03.2013, 17:38     Вылет приложения из-за android:background #7
GSUR, если проект небольшой залей куда-нибудь гляну.
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 62
28.03.2013, 18:52  [ТС]     Вылет приложения из-за android:background #8
Логи говорят об ошибке потока открыть активити и загрузить в него битмап. Залью Sbol.zip, программа пишется на API 8 и девайс эмулятора так же на андроиде 2.2, http://webfile.ru/6450566
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.03.2013, 20:49     Вылет приложения из-за android:background #9
Цитата Сообщение от GSUR Посмотреть сообщение
Логи говорят об ошибке потока открыть активити и загрузить в него битмап.
спасибо за такой прекрасный перевод, но меня интересует оригинал.
c4sp3r
0x5B4C322291BD52AE
92 / 92 / 5
Регистрация: 04.03.2013
Сообщений: 295
29.03.2013, 11:36     Вылет приложения из-за android:background #10
GSUR,

LOG

Эмулятор на основе Nexus S (Memory options по умолчанию), API 8, SDK Rev. 21.1

03-27 02:50:45.125: E/AndroidRuntime(2521): Caused by: java.lang.OutOfMemoryError: bitmap size exceeds VM budget
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.Bitmap.nativeCreate(Native Method)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.Bitmap.createBitmap(Bitmap.java:468)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.Bitmap.createBitmap(Bitmap.java:435)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.Bitmap.createScaledBitmap(Bitmap.java:340)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.BitmapFactory.finishDecode(BitmapFactory.java:488)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:462)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:323)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:697)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.content.res.Resources.loadDrawable(Resources.java:1709)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.content.res.TypedArray.getDrawable(TypedArray.java:601)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.view.View.<init>(View.java:1885)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.view.View.<init>(View.java:1834)
03-27 02:50:45.125: E/AndroidRuntime(2521): at android.view.ViewGroup.<init>(ViewGroup.java:285)
03-27 02:50:45.125: E/AndroidRuntime(2521): ... 27 more
03-27 02:51:24.774: I/Process(2521): Sending signal. PID: 2521 SIG: 9


Может все таки стоит изменить разрешение фона или даже пожать попробовать?

Root element paints background @drawable/planet with a theme that also paints a
background (inferred theme is @style/MyTheme)
Этой ошибки не видел как только поменял разрешение картинки и формат все заработало (переход между активити с тем же фоном).
Миниатюры
Вылет приложения из-за android:background  
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
29.03.2013, 12:22     Вылет приложения из-за android:background #11
OutOfMemoryError - нехватка памяти, слишком большой рисунок был.
c4sp3r
0x5B4C322291BD52AE
92 / 92 / 5
Регистрация: 04.03.2013
Сообщений: 295
29.03.2013, 13:00     Вылет приложения из-за android:background #12
V0v1k, если это мне адресовано то у меня проблем с English нет. А ему не стал расписывать думал сам поймет.
GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 62
29.03.2013, 13:23  [ТС]     Вылет приложения из-за android:background #13
Я извиняюсь за свою некомпетентность, более-менее серьезный проект пишу впервые, невнимательность губит, на картинку даже когда скачивал не посмотрел. Всем огромное спасибо.
c4sp3r
0x5B4C322291BD52AE
92 / 92 / 5
Регистрация: 04.03.2013
Сообщений: 295
29.03.2013, 13:56     Вылет приложения из-за android:background #14
GSUR, Бывает, просто в следующий раз читай внимательно логи.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2013, 15:53     Вылет приложения из-за android:background
Еще ссылки по теме:

Изменение приложения на android - Программирование Android
Возникла острая необходимость в данном приложении, но оно к сожалению имеет ограничение по версии. Как убрать из него проверку версии...

Token из приложения Android - Программирование Android
Друзья, добрый день! При подключении к сетевому чату Android программа отправляет некий запрос серверу с токеном аппарата. Токен не...

Сборка приложения в AS (совместимость >= Android 4.0) - Программирование Android
Подскажите, как правильно собрать приложение. Приложение должно работать в Android 4.0 и выше В манифесте указываю &lt;uses-sdk...

Заставка для приложения android - Программирование Android
день добрый ! я никак не могу понять как заставить работать мою заставку package com.example.yourtime; import android.content.Intent; ...

Анимация текста Android приложения - Программирование Android
Как изменить код в MainActivity package com.example.time; import android.app.Activity; import android.os.Bundle; import...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
29.03.2013, 15:53     Вылет приложения из-за android:background #15
Цитата Сообщение от c4sp3r Посмотреть сообщение
если это мне адресовано
нет, это автору, показал как просто можно было решить вопрос не разводя лишнюю демагогию.
Yandex
Объявления
29.03.2013, 15:53     Вылет приложения из-за android:background
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru