我似乎无法在较旧的Android手机上运行android studio项目

时间:2018-12-29 02:47:04

标签: java android android-studio android-api-levels

我正在为我的一个大学编码类(用Java编写)开发一个游戏项目,并且正在使用Android Studio。尽管我是Android Studio的新手,但我了解Java基础知识。我的主要问题与在较旧的API / SDK版本上(尤其是在较旧的手机上)运行/测试项目有关。

尽管我还安装了Pie(API 28),但我一直在基于API 26的Android 8.0(Oreo)上进行开发。当前,我的targetSDKVersion是26,compileSDKVersion是26,而我的minSDKVersion是19。

我正在尝试在Samsung Galaxy S4(API 19)上运行我的应用程序(称为AMaze),这就是为什么我的minSDKVersion为19的原因。据我所知,它在支持Android 8.0及更高版本的手机上运行完全正常知道。但是,当我在Galaxy S4上运行该应用程序时,它打开并崩溃,并立即显示“很遗憾,您的应用程序已停止”。我不知道该怎么解决。

我已经在StackOverflow和Android Developers网站上搜索了答案,但是运气很小。我尝试使用gradle清理和重建项目,尝试禁用Instant Run,并尝试使compileSDKVersion 19而不是26(但这会使编译器感到恼火,说Google Play要求它26岁或以上)。我假设我的手机与Android兼容(请参阅https://developer.android.com/guide/practices/compatibility),并且我按照说明将手机连接到计算机(https://developer.android.com/training/basics/firstapp/running-app)。根据开发者网站,它要做的所有事情就是将minSDKVersion设置为正确的级别,并针对代码中的所有API弃用和更新进行调整(我认为我已经做到了)。但这仍然行不通。

我发现的是我的代码在我的主要活动(称为AMazeActivity)的onCreate()方法中产生了膨胀异常。似乎各种原因都可能导致此错误,但我无法找出根本原因。这个家伙有类似的情况: android.view.InflateException: Binary XML file: Error inflating class fragment

这是在手机上运行应用程序后收到的全部错误消息。错误消息说我的充气异常是由于试图给Spinner充气:

12/27 22:08:17: Launching app
No apk changes detected since last installation, skipping installation of C:\Users\jandj\AndroidStudioProjects\AMaze\app\build\outputs\apk\debug\app-debug.apk
$ adb shell am force-stop cs.cs301.amaze
$ adb shell am start -n "cs.cs301.amaze/cs.cs301.amaze.gui.AMazeActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Connected to process 28224 on device samsung-sgh_m919-47dccee4
Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
I/dalvikvm: Could not find method android.view.Window$Callback.onPointerCaptureChanged, referenced from method android.support.v7.view.WindowCallbackWrapper.onPointerCaptureChanged
W/dalvikvm: VFY: unable to resolve interface method 16265: Landroid/view/Window$Callback;.onPointerCaptureChanged (Z)V
D/dalvikvm: VFY: replacing opcode 0x72 at 0x0002
I/dalvikvm: Could not find method android.view.Window$Callback.onProvideKeyboardShortcuts, referenced from method android.support.v7.view.WindowCallbackWrapper.onProvideKeyboardShortcuts
W/dalvikvm: VFY: unable to resolve interface method 16267: Landroid/view/Window$Callback;.onProvideKeyboardShortcuts (Ljava/util/List;Landroid/view/Menu;I)V
D/dalvikvm: VFY: replacing opcode 0x72 at 0x0002
W/dalvikvm: VFY: unable to find class referenced in signature (Landroid/view/SearchEvent;)
I/dalvikvm: Could not find method android.view.Window$Callback.onSearchRequested, referenced from method android.support.v7.view.WindowCallbackWrapper.onSearchRequested
W/dalvikvm: VFY: unable to resolve interface method 16269: Landroid/view/Window$Callback;.onSearchRequested (Landroid/view/SearchEvent;)Z
D/dalvikvm: VFY: replacing opcode 0x72 at 0x0002
I/dalvikvm: Could not find method android.view.Window$Callback.onWindowStartingActionMode, referenced from method android.support.v7.view.WindowCallbackWrapper.onWindowStartingActionMode
W/dalvikvm: VFY: unable to resolve interface method 16273: Landroid/view/Window$Callback;.onWindowStartingActionMode (Landroid/view/ActionMode$Callback;I)Landroid/view/ActionMode;
D/dalvikvm: VFY: replacing opcode 0x72 at 0x0002
I/dalvikvm: Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.widget.TintTypedArray.getChangingConfigurations
W/dalvikvm: VFY: unable to resolve virtual method 708: Landroid/content/res/TypedArray;.getChangingConfigurations ()I
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002
I/dalvikvm: Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.widget.TintTypedArray.getType
W/dalvikvm: VFY: unable to resolve virtual method 730: Landroid/content/res/TypedArray;.getType (I)I
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0008
I/dalvikvm: Could not find method android.content.Context.createDeviceProtectedStorageContext, referenced from method android.support.v4.content.ContextCompat.createDeviceProtectedStorageContext
W/dalvikvm: VFY: unable to resolve virtual method 485: Landroid/content/Context;.createDeviceProtectedStorageContext ()Landroid/content/Context;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.getCodeCacheDir, referenced from method android.support.v4.content.ContextCompat.getCodeCacheDir
W/dalvikvm: VFY: unable to resolve virtual method 491: Landroid/content/Context;.getCodeCacheDir ()Ljava/io/File;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.getColor, referenced from method android.support.v4.content.ContextCompat.getColor
W/dalvikvm: VFY: unable to resolve virtual method 492: Landroid/content/Context;.getColor (I)I
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.getColorStateList, referenced from method android.support.v4.content.ContextCompat.getColorStateList
W/dalvikvm: VFY: unable to resolve virtual method 493: Landroid/content/Context;.getColorStateList (I)Landroid/content/res/ColorStateList;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.getDataDir, referenced from method android.support.v4.content.ContextCompat.getDataDir
W/dalvikvm: VFY: unable to resolve virtual method 495: Landroid/content/Context;.getDataDir ()Ljava/io/File;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.getDrawable, referenced from method android.support.v4.content.ContextCompat.getDrawable
W/dalvikvm: VFY: unable to resolve virtual method 496: Landroid/content/Context;.getDrawable (I)Landroid/graphics/drawable/Drawable;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.getNoBackupFilesDir, referenced from method android.support.v4.content.ContextCompat.getNoBackupFilesDir
W/dalvikvm: VFY: unable to resolve virtual method 503: Landroid/content/Context;.getNoBackupFilesDir ()Ljava/io/File;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.isDeviceProtectedStorage, referenced from method android.support.v4.content.ContextCompat.isDeviceProtectedStorage
W/dalvikvm: VFY: unable to resolve virtual method 516: Landroid/content/Context;.isDeviceProtectedStorage ()Z
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.content.Context.startForegroundService, referenced from method android.support.v4.content.ContextCompat.startForegroundService
W/dalvikvm: VFY: unable to resolve virtual method 531: Landroid/content/Context;.startForegroundService (Landroid/content/Intent;)Landroid/content/ComponentName;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
I/dalvikvm: Could not find method android.widget.FrameLayout.startActionModeForChild, referenced from method android.support.v7.widget.ActionBarContainer.startActionModeForChild
W/dalvikvm: VFY: unable to resolve virtual method 16736: Landroid/widget/FrameLayout;.startActionModeForChild (Landroid/view/View;Landroid/view/ActionMode$Callback;I)Landroid/view/ActionMode;
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0002
I/dalvikvm: Could not find method android.content.Context.getColorStateList, referenced from method android.support.v7.content.res.AppCompatResources.getColorStateList
W/dalvikvm: VFY: unable to resolve virtual method 493: Landroid/content/Context;.getColorStateList (I)Landroid/content/res/ColorStateList;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0006
W/dalvikvm: VFY: unable to find class referenced in signature (Landroid/graphics/drawable/Icon;)
I/dalvikvm: Could not find method android.widget.ImageButton.setImageIcon, referenced from method android.support.v7.widget.AppCompatImageButton.setImageIcon
W/dalvikvm: VFY: unable to resolve virtual method 16759: Landroid/widget/ImageButton;.setImageIcon (Landroid/graphics/drawable/Icon;)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0000
I/dalvikvm: Could not find method android.content.res.Resources.getDrawable, referenced from method android.support.v7.widget.ResourcesWrapper.getDrawable
W/dalvikvm: VFY: unable to resolve virtual method 671: Landroid/content/res/Resources;.getDrawable (ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002
I/dalvikvm: Could not find method android.content.res.Resources.getDrawableForDensity, referenced from method android.support.v7.widget.ResourcesWrapper.getDrawableForDensity
W/dalvikvm: VFY: unable to resolve virtual method 673: Landroid/content/res/Resources;.getDrawableForDensity (IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002
E/dalvikvm: Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering
W/dalvikvm: VFY: unable to resolve instanceof 194 (Landroid/graphics/drawable/RippleDrawable;) in Landroid/support/v7/widget/AppCompatImageHelper;
D/dalvikvm: VFY: replacing opcode 0x20 at 0x000c
I/dalvikvm: Could not find method android.widget.TextView.getAutoSizeMaxTextSize, referenced from method android.support.v7.widget.AppCompatTextView.getAutoSizeMaxTextSize
W/dalvikvm: VFY: unable to resolve virtual method 17062: Landroid/widget/TextView;.getAutoSizeMaxTextSize ()I
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.getAutoSizeMinTextSize, referenced from method android.support.v7.widget.AppCompatTextView.getAutoSizeMinTextSize
W/dalvikvm: VFY: unable to resolve virtual method 17063: Landroid/widget/TextView;.getAutoSizeMinTextSize ()I
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.getAutoSizeStepGranularity, referenced from method android.support.v7.widget.AppCompatTextView.getAutoSizeStepGranularity
W/dalvikvm: VFY: unable to resolve virtual method 17064: Landroid/widget/TextView;.getAutoSizeStepGranularity ()I
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.getAutoSizeTextAvailableSizes, referenced from method android.support.v7.widget.AppCompatTextView.getAutoSizeTextAvailableSizes
W/dalvikvm: VFY: unable to resolve virtual method 17065: Landroid/widget/TextView;.getAutoSizeTextAvailableSizes ()[I
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.getAutoSizeTextType, referenced from method android.support.v7.widget.AppCompatTextView.getAutoSizeTextType
W/dalvikvm: VFY: unable to resolve virtual method 17066: Landroid/widget/TextView;.getAutoSizeTextType ()I
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0007
I/dalvikvm: Could not find method android.widget.TextView.setAutoSizeTextTypeUniformWithConfiguration, referenced from method android.support.v7.widget.AppCompatTextView.setAutoSizeTextTypeUniformWithConfiguration
W/dalvikvm: VFY: unable to resolve virtual method 17109: Landroid/widget/TextView;.setAutoSizeTextTypeUniformWithConfiguration (IIII)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.setAutoSizeTextTypeUniformWithPresetSizes, referenced from method android.support.v7.widget.AppCompatTextView.setAutoSizeTextTypeUniformWithPresetSizes
W/dalvikvm: VFY: unable to resolve virtual method 17110: Landroid/widget/TextView;.setAutoSizeTextTypeUniformWithPresetSizes ([II)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.setAutoSizeTextTypeWithDefaults, referenced from method android.support.v7.widget.AppCompatTextView.setAutoSizeTextTypeWithDefaults
W/dalvikvm: VFY: unable to resolve virtual method 17111: Landroid/widget/TextView;.setAutoSizeTextTypeWithDefaults (I)V
D/dalvikvm: VFY: replacing opcode 0x6f at 0x0006
I/dalvikvm: Could not find method android.widget.TextView.getAutoSizeStepGranularity, referenced from method android.support.v7.widget.AppCompatTextHelper.loadFromAttributes
W/dalvikvm: VFY: unable to resolve virtual method 17064: Landroid/widget/TextView;.getAutoSizeStepGranularity ()I
D/dalvikvm: VFY: replacing opcode 0x6e at 0x0163
I/dalvikvm: Could not find method android.text.StaticLayout$Builder.obtain, referenced from method android.support.v7.widget.AppCompatTextViewAutoSizeHelper.createStaticLayoutForMeasuring
W/dalvikvm: VFY: unable to resolve static method 15540: Landroid/text/StaticLayout$Builder;.obtain (Ljava/lang/CharSequence;IILandroid/text/TextPaint;I)Landroid/text/StaticLayout$Builder;
D/dalvikvm: VFY: replacing opcode 0x71 at 0x0014
D/ProgressBar: setProgressDrawable drawableHeight = 36
D/AbsSeekBar: AbsSeekBar Constructor: mAllowedSeeBarAnimation = true
D/ProgressBar: setProgressDrawable drawableHeight = 36
    setProgressDrawable getHeight() = 0
    updateDrawableBounds: left = 0
    updateDrawableBounds: top = 0
    updateDrawableBounds: right = -96
    updateDrawableBounds: bottom = 0
    updateDrawableBounds: mProgressDrawable.setBounds()
I/dalvikvm: Could not find method android.widget.Spinner.getPopupContext, referenced from method android.support.v7.widget.AppCompatSpinner.getPopupContext
W/dalvikvm: VFY: unable to resolve virtual method 17017: Landroid/widget/Spinner;.getPopupContext ()Landroid/content/Context;
D/dalvikvm: VFY: replacing opcode 0x6f at 0x000d
W/ResourceType: Skipping entry 0x7f050026 in package table 0 because it is not complex!
E/AMazeActivity: onCreate
    android.view.InflateException: Binary XML file line #46: Error inflating class Spinner
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:719)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:354)
        at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287)
        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139)
        at cs.cs301.amaze.gui.AMazeActivity.onCreate(AMazeActivity.java:39)
        at android.app.Activity.performCreate(Activity.java:5585)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2400)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2495)
        at android.app.ActivityThread.access$900(ActivityThread.java:170)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1304)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:146)
        at android.app.ActivityThread.main(ActivityThread.java:5635)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
        at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NullPointerException
        at android.content.res.AssetManager.getResourceTextArray(AssetManager.java:215)
        at android.content.res.Resources.getTextArray(Resources.java:1626)
        at android.content.res.TypedArray.getTextArray(TypedArray.java:629)
        at android.widget.AbsSpinner.<init>(AbsSpinner.java:74)
        at android.widget.Spinner.<init>(Spinner.java:174)
        at android.widget.Spinner.<init>(Spinner.java:153)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:195)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:166)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:147)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:132)
        at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:115)
        at android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1024)
        at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1081)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:690)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:761) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:498) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:398) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:354) 
        at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 
        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
        at cs.cs301.amaze.gui.AMazeActivity.onCreate(AMazeActivity.java:39) 
        at android.app.Activity.performCreate(Activity.java:5585) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2400) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2495) 
        at android.app.ActivityThread.access$900(ActivityThread.java:170) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1304) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:146) 
        at android.app.ActivityThread.main(ActivityThread.java:5635) 
        at java.lang.reflect.Method.invokeNative(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:515) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107) 
        at dalvik.system.NativeStart.main(Native Method) 
D/AndroidRuntime: Shutting down VM
W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x417eeda0)
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: cs.cs301.amaze, PID: 28224
    java.lang.RuntimeException: Unable to start activity ComponentInfo{cs.cs301.amaze/cs.cs301.amaze.gui.AMazeActivity}: android.view.InflateException: Binary XML file line #46: Error inflating class Spinner
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2436)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2495)
        at android.app.ActivityThread.access$900(ActivityThread.java:170)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1304)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:146)
        at android.app.ActivityThread.main(ActivityThread.java:5635)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
        at dalvik.system.NativeStart.main(Native Method)
     Caused by: android.view.InflateException: Binary XML file line #46: Error inflating class Spinner
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:719)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:354)
        at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287)
        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139)
        at cs.cs301.amaze.gui.AMazeActivity.onCreate(AMazeActivity.java:39)
        at android.app.Activity.performCreate(Activity.java:5585)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2400)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2495) 
        at android.app.ActivityThread.access$900(ActivityThread.java:170) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1304) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:146) 
        at android.app.ActivityThread.main(ActivityThread.java:5635) 
        at java.lang.reflect.Method.invokeNative(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:515) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107) 
        at dalvik.system.NativeStart.main(Native Method) 
     Caused by: java.lang.NullPointerException
        at android.content.res.AssetManager.getResourceTextArray(AssetManager.java:215)
        at android.content.res.Resources.getTextArray(Resources.java:1626)
        at android.content.res.TypedArray.getTextArray(TypedArray.java:629)
        at android.widget.AbsSpinner.<init>(AbsSpinner.java:74)
        at android.widget.Spinner.<init>(Spinner.java:174)
        at android.widget.Spinner.<init>(Spinner.java:153)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:195)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:166)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:147)
        at android.support.v7.widget.AppCompatSpinner.<init>(AppCompatSpinner.java:132)
        at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:115)
        at android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1024)
        at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1081)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:690)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:761) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:498) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:398) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:354) 
        at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 
        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
        at cs.cs301.amaze.gui.AMazeActivity.onCreate(AMazeActivity.java:39) 
        at android.app.Activity.performCreate(Activity.java:5585) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2400) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2495) 
        at android.app.ActivityThread.access$900(ActivityThread.java:170) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1304) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:146) 
        at android.app.ActivityThread.main(ActivityThread.java:5635) 
        at java.lang.reflect.Method.invokeNative(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:515) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107) 
        at dalvik.system.NativeStart.main(Native Method) 
I/Process: Sending signal. PID: 28224 SIG: 9
Application terminated.

这是我的主要活动中发生崩溃的地方。我尝试将代码放在try / catch块中,以捕获异常并将其更干净地打印出来,如上所示:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        try {

            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_amaze);
        }
        catch (Exception e) {
            e.getCause();
            Log.e("AMazeActivity", "onCreate", e);
            throw e;
        }
.  .  .
.  .  .

注意事项:我在活动中使用约束布局,在程序中仅使用一个自定义视图,并且未使用自定义主题。这是异常抱怨Spinner的XML文件:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

    tools:context="cs.cs301.amaze.gui.AMazeActivity">

   .  .  .

    <TextView
        android:id="@+id/diff_JFrame"
        android:layout_width="248dp"
        android:layout_height="60dp"
        android:layout_marginStart="16dp"
        android:layout_marginTop="256dp"
        android:text="Difficulty/Size"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

   .  .  .

    <Spinner
        android:id="@+id/mazeGen"
        android:layout_width="248dp"
        android:layout_height="35dp"
        android:layout_marginStart="16dp"
        android:layout_marginEnd="120dp"
        android:layout_marginBottom="130dp"
        android:entries="@color/colorAccent"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        />
   .  .  .

我认为可能只是更改设置中的几行(也许在gradle,清单文件,R类,XML文件等中),但是我不知道要更改什么或在哪里更改。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

更改此行

android:entries="@color/colorAccent"

android:entries="@array/yourarrayname"