2013-12-22 8 views
-1

В приложении я пытаюсь получить изображение с завихрением. Мое приложение прекрасно работает только с портретным видом. Момент, когда я пытаюсь изменить ориентацию. Или приложение сбой или завершение (да ,любой из них).Сбой приложения при изменении ориентации

Я следовал некоторые предложения StackOverflow и получил ответ использовать

android:configChanges="orientation|keyboardHidden|screenSize|screenLayout" 

, но по-прежнему падает/заканчивается. Это ссылка, из которой я взял базовый код. (Я добавил только 35 изображений, где, как и в коде, было использовано только 2), также я установил большой размер кучи = true в манифесте android.

https://github.com/MysticTreeGames/android-page-curl

некоторые предложили обрабатывать код на OnPause(), как это, но в проекте ГИТ нет метода OnCreate(). Как решить проблему.

Это моя LogCat ошибка, когда произошла авария

E/AndroidRuntime(9839): Caused by: android.view.InflateException: Binary XML file line #6: Error inflating class <unknown> 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.createView(LayoutInflater.java:613) 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687) 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 
E/AndroidRuntime(9839):  at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:281) 
E/AndroidRuntime(9839):  at android.app.Activity.setContentView(Activity.java:1881) 
E/AndroidRuntime(9839):  at com.mystictreegames.pagecurl.StandaloneExample.onCreate(StandaloneExample.java:21) 
E/AndroidRuntime(9839):  at android.app.Activity.performCreate(Activity.java:5122) 
E/AndroidRuntime(9839):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081) 
E/AndroidRuntime(9839):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307) 
E/AndroidRuntime(9839):  ... 11 more 
E/AndroidRuntime(9839): Caused by: java.lang.reflect.InvocationTargetException 
E/AndroidRuntime(9839):  at java.lang.reflect.Constructor.constructNative(Native Method) 
E/AndroidRuntime(9839):  at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 
E/AndroidRuntime(9839):  at android.view.LayoutInflater.createView(LayoutInflater.java:587) 
E/AndroidRuntime(9839):  ... 22 more 
E/AndroidRuntime(9839): Caused by: java.lang.OutOfMemoryError 
E/AndroidRuntime(9839):  at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 
E/AndroidRuntime(9839):  at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:521) 
E/AndroidRuntime(9839):  at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:374) 
E/AndroidRuntime(9839):  at android.graphics.BitmapFactory.decodeResource(BitmapFactory.java:397) 
E/AndroidRuntime(9839):  at android.graphics.BitmapFactory.decodeResource(BitmapFactory.java:427) 
E/AndroidRuntime(9839):  at com.mystictreegames.pagecurl.PageCurlView.init(PageCurlView.java:318) 
E/AndroidRuntime(9839):  at com.mystictreegames.pagecurl.PageCurlView.<init>(PageCurlView.java:233) 

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

+0

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

+0

моих изображений а не высокого качества в среднем 500 кб и в среднем (550х500). –

+0

Тогда у вас могут быть серьезные утечки памяти в вашем приложении или очень высокая память в целом. – Niko

ответ

0

Вы получаете OutOfMemoryError: следуйте инструкциям здесь, как загружать большие растровые изображения: http://developer.android.com/training/displaying-bitmaps/load-bitmap.html

+0

Я пытаюсь установить их как фон, ссылка u упоминает о представлении изображения. –

+0

BitmapDrawable может быть создан путем предоставления Bitmap в конструкторе и тем способом, который используется в качестве фона. – Niko