Adapter的getView方法返回了null

Android  小知识  2021年12月7日 pm12:12发布3年前 (2021)更新 91es.com站长
64 0 0

前言

这个是很简单的问题,就是适配器(比如BaseAdapter)中的getView()返回了null,是如下:

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
         // ...
        return null;
    }

修改方法就是返回初始化过的convertView

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
         // ...
        return convertView;
    }

这个都是自己粗心大意导致的,记录于此,以示警戒。

正文

下面是异常的日志打印:

11-22 23:35:00.404 25866 25866 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportantForAccessibility()' on a null object reference
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.AbsListView.obtainView(AbsListView.java:2383)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.ListView.makeAndAddView(ListView.java:2052)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.ListView.fillDown(ListView.java:786)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.ListView.fillFromTop(ListView.java:847)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.ListView.layoutChildren(ListView.java:1826)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.AbsListView.onLayout(AbsListView.java:2165)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1083)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at androidx.appcompat.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:536)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.ViewGroup.layout(ViewGroup.java:6194)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
11-22 23:35:00.404 25866 25866 E AndroidRuntime:        at android.view.View.layout(View.java:20672)

参考文章

抱歉。由于之前忘记备注,无法回忆看到谁的文章了。

 历史上的今天

  1. 2023: Activity的Context介绍(0条评论)
  2. 2022: Android xml中selector配置选中按下等状态的透明度值(0条评论)
  3. 2019: 茅盾:白杨礼赞(0条评论)
版权声明 1、 本站名称: 91易搜
2、 本站网址: 91es.com3xcn.com
3、 本站内容: 部分来源于网络,仅供学习和参考,若侵权请留言
3、 本站申明: 个人流水账日记,内容并不保证有效

暂无评论

暂无评论...

随机推荐

冯友兰:我的读书经验

我今年八十七岁了,从七岁上学起就读书,一直读了八十年,其间基本上没有间断,不能说对于读书没有一点经验。我所读的书,大概都是文、史、哲方面的,特别是哲。我的经验总结起来有四点:(1)精其选,(2)解其言,(3)知其意,(4)明其理。先说第一点。古今中外,积累起来的书真是多极了,真是浩如烟海。但是,书...

Android.mk 用法解析整理

Android.mk 还是整理一下,有时候还是忘记了,这里只是讲解一部分,其他的自己百度或谷歌吧。 编译一个APK的Android.mk文件LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)#指定依赖的共享Java类库...

[摘]Android音频焦点处理

概要Android系统允许多个应用同时播放音频,这种特性有利有弊。例如当我们正在听音乐的时候突然点开了一个视频,如果我们发现音乐的声音和视频的的声音混合了在一起,这显然让我们非常不爽。而如果我们在播放音乐的时候,突然来了一条信息,这个时候,我们既希望能听到短信的提示音,又不希望音乐此刻停止,而是...

Application的Context介绍

前言对于Application,Activity和Service这几个类,我们是很[熟悉]的。确实[熟悉],作为App开发这基本都要面对这几个类。比较好奇的朋友会发现,他们都拥有Context,但他们的Context有似乎有一点点的不同。今天有空,根据网上大佬的步伐,在这里简单记录一下。正文...

Android加载动画常用做法简介

前言Android开发中常用到加载动画,因此今天有空记录一下使用方法和性能对比,方便自己查阅。正文效果就是一直旋转,下面是用到的部分加载图片(忘记保留来源地址了,只知道来自简书面,抱歉)隐藏内容!付费阅读后才能查看!¥2 ¥3多个隐藏块只需支付一次付费阅读参考文章

pengdingIntent的使用

什么是pengdingIntent?pendingIntent字面意义:等待的,未决定的Intent。要得到一个pendingIntent对象,使用方法类的静态方法getActivity(Context, int, Intent, int)getBroadcast(Context, int...