Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 方向改变时的充气异常_Java_Android_Android Studio_Android Orientation - Fatal编程技术网

Java 方向改变时的充气异常

Java 方向改变时的充气异常,java,android,android-studio,android-orientation,Java,Android,Android Studio,Android Orientation,每当我改变屏幕方向时,我的应用程序就会崩溃,出现以下异常。我相信这与ImageView有关,导致模拟器内存不足,但我无法理解堆栈跟踪 在ProfileActivity.java(我希望允许方向发生更改)中,我尝试像这样保存和恢复ImageView的实例,但它似乎不起作用: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCon

每当我改变屏幕方向时,我的应用程序就会崩溃,出现以下异常。我相信这与ImageView有关,导致模拟器内存不足,但我无法理解堆栈跟踪

在ProfileActivity.java(我希望允许方向发生更改)中,我尝试像这样保存和恢复ImageView的实例,但它似乎不起作用:

@Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_beer_profile);

    if(savedInstanceState != null){
        ratingImages = (List<ImageView>) savedInstanceState.getSerializable("ratingImages");
    } 
}

@Override protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putSerializable("ratingImages", (Serializable) ratingImages);
}

@Override public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);

}
@创建时覆盖受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u-beer\u-profile);
如果(savedInstanceState!=null){
ratingImages=(列表)savedInstanceState.getSerializable(“ratingImages”);
} 
}
@覆盖SaveInstanceState上受保护的空(束超出状态){
super.onSaveInstanceState(超出状态);
outState.putSerializable(“ratingImages”,(Serializable)ratingImages);
}
@覆盖已更改配置(配置newConfig)的公共无效{
super.onConfigurationChanged(newConfig);
}
但是,我得到以下运行时异常:

04-01 17:34:29.836 25455-25455/com.myapp.myapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.myapp.myapp, PID: 25455
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp.myapp/com.myapp.myapp.ProfileActivity}: android.view.InflateException: Binary XML file line #269: Binary XML file line #269: Error inflating class <unknown>
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
  at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077)
  at android.app.ActivityThread.-wrap15(ActivityThread.java)
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350)
  at android.os.Handler.dispatchMessage(Handler.java:102)
  at android.os.Looper.loop(Looper.java:148)
  at android.app.ActivityThread.main(ActivityThread.java:5417)
  at java.lang.reflect.Method.invoke(Native Method)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: android.view.InflateException: Binary XML file line #269: Binary XML file line #269: Error inflating class <unknown>
  at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
  at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
  at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
  at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257)
  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)
  at com.myapp.myapp.ProfileActivity.onCreate(ProfileActivity.java:46)
  at android.app.Activity.performCreate(Activity.java:6237)
  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
  at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077) 
  at android.app.ActivityThread.-wrap15(ActivityThread.java) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350) 
  at android.os.Handler.dispatchMessage(Handler.java:102) 
  at android.os.Looper.loop(Looper.java:148) 
  at android.app.ActivityThread.main(ActivityThread.java:5417) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Caused by: android.view.InflateException: Binary XML file line #269: Error inflating class <unknown>
  at android.view.LayoutInflater.createView(LayoutInflater.java:645)
  at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)
  at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694)
  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762)
  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
  at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
  at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
  at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257) 
  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 
  at com.myapp.myapp.ProfileActivity.onCreate(ProfileActivity.java:46) 
  at android.app.Activity.performCreate(Activity.java:6237) 
  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
  at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077) 
  at android.app.ActivityThread.-wrap15(ActivityThread.java) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350) 
  at android.os.Handler.dispatchMessage(Handler.java:102) 
  at android.os.Looper.loop(Looper.java:148) 
  at android.app.ActivityThread.main(ActivityThread.java:5417) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Caused by: java.lang.reflect.InvocationTargetException
  at java.lang.reflect.Constructor.newInstance(Native Method)
  at android.view.LayoutInflater.createView(LayoutInflater.java:619)
  at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
  at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694) 
  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762) 
  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
  at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257) 
  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 
  at com.myapp.myapp.ProfileActivity.onCreate(ProfileActivity.java:46) 
  at android.app.Activity.performCreate(Activity.java:6237) 
  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
  at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077) 
  at android.app.ActivityThread.-wrap15(ActivityThread.java) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350) 
  at android.os.Handler.dispatchMessage(Handler.java:102) 
  at android.os.Looper.loop(Looper.java:148) 
  at android.app.ActivityThread.main(ActivityThread.java:5417) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Caused by: java.lang.OutOfMemoryError: Failed to allocate a 4284912 byte allocation with 2835528 free bytes and 2MB until OOM
  at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
  at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
  at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:609)
  at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444)
  at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1080)
  at android.content.res.Resources.loadDrawableForCookie(Resources.java:2635)
  at android.content.res.Resources.loadDrawable(Resources.java:2540)
  at android.content.res.TypedArray.getDrawable(TypedArray.java:870)
  at android.widget.ImageView.<init>(ImageView.java:152)
  at android.widget.ImageView.<init>(ImageView.java:140)
  at android.widget.ImageView.<init>(ImageView.java:136)
  at java.lang.reflect.Constructor.newInstance(Native Method) 
  at android.view.LayoutInflater.createView(LayoutInflater.java:619) 
  at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
  at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694) 
  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762) 
  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.rInflate(LayoutInflater.java:838) 
  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
  at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
  at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:257) 
  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 
  at com.myapp.myapp.ProfileActivity.onCreate(ProfileActivity.java:46) 
  at android.app.Activity.performCreate(Activity.java:6237) 
  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
  at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077) 
  at android.app.ActivityThread.-wrap15(ActivityThread.java) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350) 
  at android.os.Handler.dispatchMessage(Handler.java:102) 
  at android.os.Looper.loop(Looper.java:148) 
  at android.app.ActivityThread.main(ActivityThread.java:5417) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
04-01 17:34:29.836 25455-25455/com.myapp.myapp E/AndroidRuntime:FATAL EXCEPTION:main
进程:com.myapp.myapp,PID:25455
java.lang.RuntimeException:无法启动活动组件信息{com.myapp.myapp/com.myapp.myapp.ProfileActivity}:android.view.InflateException:二进制XML文件行#269:二进制XML文件行#269:膨胀类时出错
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
在android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077)上
位于android.app.ActivityThread.-wrap15(ActivityThread.java)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350)上
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:148)
位于android.app.ActivityThread.main(ActivityThread.java:5417)
位于java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:726)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
原因:android.view.InflateException:二进制XML文件行#269:二进制XML文件行#269:膨胀类时出错
在android.view.LayoutInflater.inflate(LayoutInflater.java:539)
在android.view.LayoutInflater.充气(LayoutInflater.java:423)
在android.view.LayoutInflater.inflate(LayoutInflater.java:374)
在android.support.v7.app.AppCompateDelegateImplV7.setContentView(AppCompateDelegateImplV7.java:257)
位于android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)
位于com.myapp.myapp.ProfileActivity.onCreate(ProfileActivity.java:46)
位于android.app.Activity.performCreate(Activity.java:6237)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
在android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077)上
位于android.app.ActivityThread.-wrap15(ActivityThread.java)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350)上
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:148)
位于android.app.ActivityThread.main(ActivityThread.java:5417)
位于java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:726)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
原因:android.view.InflateException:二进制XML文件行#269:膨胀类时出错
位于android.view.LayoutInflater.createView(LayoutInflater.java:645)
位于com.android.internal.policy.PhoneLayoutFlater.onCreateView(phoneLayoutFlater.java:58)
位于android.view.LayoutInflater.onCreateView(LayoutInflater.java:694)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:835)
位于android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
位于android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
位于android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
位于android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
在android.view.LayoutInflater.充气(LayoutInflater.java:515)
在android.view.LayoutInflater.充气(LayoutInflater.java:423)
在android.view.LayoutInflater.inflate(LayoutInflater.java:374)
在android.support.v7.app.AppCompateDelegateImplV7.setContentView(AppCompateDelegateImplV7.java:257)
位于android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)
位于com.myapp.myapp.ProfileActivity.onCreate(ProfileActivity.java:46)
位于android.app.Activity.performCreate(Activity.java:6237)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
在android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4077)上
位于android.app.ActivityThread.-wrap15(ActivityThread.java)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1350)上
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:148)
位于android.app.ActivityThread.main(ActivityThread.java:5417)
位于java.lang.reflect.Method.invoke(本机方法)
在com.an