java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView

本文介绍了解决Android Adapter中item布局高度不正确的问题,通过调整inflate方法的参数,确保item能正确参考父控件的高度,从而避免item之间紧挨的情况。
解决办法:
把
  convertView =  LayoutInflater.from(mContext).inflate(R.layout.item_detail_city, null);//主体条目
更换为:
  convertView =  LayoutInflater.from(mContext).inflate(R.layout.item_detail_city, parent,false);//主体条目


问题解决,出现这个 问题的时候,一般伴随着,你的布局,不管怎么xml怎么设置高度,但是程序运行起来后,item还是紧紧的挨在一起,因为他没有参考父控件的高度,按照这么设置问题就可以得到妥善的解决.
关于这
inflate 有四种用法,之前在我的博客有讲过,如果感兴趣的话,可以参考这个链接:http://blog.youkuaiyun.com/wolfking0608/article/details/78262789?locationNum=8&fps=1
本人 github 里面挺多好东西的,有兴趣的可以关注下,顺便点个赞:https://github.com/wolfking0608


出现以下报错的原因,改怎么解决,修改哪里2023-06-06 22:04:47.620 3151-3151/com.example.notepad E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.notepad, PID: 3151 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.notepad/com.example.notepad.MainActivity}: android.view.InflateException: Binary XML file line #32: addView(View, LayoutParams) is not supported in AdapterView at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2954) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3089) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1819) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6737) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860) Caused by: android.view.InflateException: Binary XML file line #32: addView(View, LayoutParams) is not supported in AdapterView Caused by: java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView at android.widget.AdapterView.addView(AdapterView.java:503) at android.view.LayoutInflater.rInflate(LayoutInflater.java:867) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824) at android.view.LayoutInflater.rInflate(LayoutInflater.java:866) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824) 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 com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:420) at android.app.Activity.setContentView(Activity.java:2772) at com.example.notepad.MainActivity.onCreate(MainActivity.java:30) at android.app.Activity.performCreate(Activity.java:7144) at android.app.Activity.performCreate(Activity.java:7135) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2934) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3089) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1819) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6737) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860)
06-07
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值