gpt4 book ai didi

android - AppCompat - Spinner 在 RelativeLayout 中不工作

转载 作者:太空狗 更新时间:2023-10-29 16:34:24 24 4
gpt4 key购买 nike

我收到以下错误(使用最新的支持库 v23.0 和构建 SDK 23):

案例一:Android 4.2.1

java.lang.NullPointerException
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:523)
at android.view.View.measure(View.java:15612)
at android.support.v7.internal.widget.ListViewCompat.measureHeightOfChildrenCompat(ListViewCompat.java:301)
at android.support.v7.widget.ListPopupWindow.buildDropDown(ListPopupWindow.java:1200)
at android.support.v7.widget.ListPopupWindow.show(ListPopupWindow.java:584)
at android.support.v7.widget.AppCompatSpinner$DropdownPopup.show(AppCompatSpinner.java:766)
at android.support.v7.widget.AppCompatSpinner.performClick(AppCompatSpinner.java:424)
at android.view.View$PerformClick.run(View.java:17439)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:5341)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:929)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:696)
at dalvik.system.NativeStart.main(Native Method)

案例二:Android 4.3

java.lang.NullPointerException
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:578)
at android.view.View.measure(View.java:16831)
at android.support.v7.internal.widget.ListViewCompat.measureHeightOfChildrenCompat(ListViewCompat.java:301)
at android.support.v7.widget.ListPopupWindow.buildDropDown(ListPopupWindow.java:1200)
at android.support.v7.widget.ListPopupWindow.show(ListPopupWindow.java:584)
at android.support.v7.widget.AppCompatSpinner$DropdownPopup.show(AppCompatSpinner.java:766)
at android.support.v7.widget.AppCompatSpinner.performClick(AppCompatSpinner.java:424)
at android.view.View$PerformClick.run(View.java:18786)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:5419)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)
at dalvik.system.NativeStart.main(Native Method)

其实我不知道从哪里开始搜索。我从崩溃中得到这个错误并且无法在我的手机上重现它。而且我不知道它的真正来源。

我搜索了我的代码,我没有直接嵌套在任何 RelativeLayout 中的 Spinner...

有没有人知道是什么导致了这个问题?

我对代码所做的更改

主要是我从支持库更新并将 sdk v22 构建到 v23。我以前从来没有遇到过这样的问题......

报错原因,基于Android 4.2.1报错论证:

http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.2.1_r1.2/android/widget/RelativeLayout.java#RelativeLayout

在第 523 行中...这就是我从收到的错误报告中得到的...

523 if (mLayoutParams.height >= 0) {
524 height = Math.max(height, mLayoutParams.height);
525 }

在android 4.3中其实是同样的问题,mLayoutParams为null...

最佳答案

我找到了原因。

我正在使用许多适配器,其中一个我不小心将 View 附加到 Root View ...这在大多数设备和 Android 版本上似乎没有问题,但在某些...

convertView = mInflater.inflate(mLayoutRes, null);

应该是

convertView = mInflater.inflate(mLayoutRes, null, false);

如果适配器用于 Spinner...

关于android - AppCompat - Spinner 在 RelativeLayout 中不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32391354/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com