android asynctask-android-AsyncTask更新列表

问题描述

android-AsyncTask更新列表

求助——
在AsyncTask中调用MainActivity,更新了adapter,但是LogCat给出了onPostExecture的NullPointerException,我检查了列表,里面有值,不是空的啊。

AsyncTask.java

protected void onPostExecute(List<MoviesCategory> result){
    super.onPostExecute(result);
    //Here i have Error, i cheked result it's not null.
    //On AsyncTask i have Constructor when i get Activity.
    activity.mMoviesAdapter.addCategory(result);
}

Adapter.java

List<MoviesCategory> mListMovies;

public void addCategory(List<MoviesCategory> list){
    mListMovies.addAll(list);
    notifyDataSetChanged();
}

我做的更新:

更新

FATAL EXCEPTION: main
java.lang.NullPointerException
    at uz.afishamedia.Adapter.MoviesAdapter.addCategory(MoviesAdapter.java:49)
    at uz.afishamedia.Utils.LoadMovies.onPostExecute(LoadMovies.java:74)
    at uz.afishamedia.Utils.LoadMovies.onPostExecute(LoadMovies.java:1)
    at android.os.AsyncTask.finish(AsyncTask.java:631)
    at android.os.AsyncTask.access$600(AsyncTask.java:177)
    at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:5191)
    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:795)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
    at dalvik.system.NativeStart.main(Native Method)

解决方案

问题出在mListMovies本来就是空的,需要对它先初始化

Adapter.java:

List<MoviesCategory> mListMovies = new ArrayList<MoviesCategory>();

解决方案二:

你的mListMovies没初始化啊。
加上这个就行了:

List<MoviesCategory> mListMovies = new ArrayList<MoviesCategory>();
时间: 2024-11-20 18:31:13

android asynctask-android-AsyncTask更新列表的相关文章

android sdk manager 没有更新列表

问题描述 android sdk manager 没有更新列表 刚买的电脑,win8.1系统 hosts也改了,对号也点了,都没有效果 解决方案 SDK 更新的设置里有一个选项,也需要勾的,你勾了没? 解决方案二: 够了,我现在用东软的镜像网站倒是有列表了,但是只到4.4.2 API 19,网速依然很慢 解决方案三: 够了,我现在用东软的镜像网站倒是有列表了,但是只到4.4.2 API 19,网速依然很慢 解决方案四: 你试试这个方法,我是这么更新的: 1. 用翻墙软件挂个VPN 2. 打开SD

android sdk-Android sdk manager 无法更新列表

问题描述 Android sdk manager 无法更新列表 Android Sdk无法更新,即使在hosts文件里加了谷歌网址,或者点击option选项后,在代理服务器里填写了服务器地址和端口号,勾选了下面那个那个http://ftp..,最后关闭manager sdk也没有实现更新,求大神指教,谢谢! 解决方案 1.问题: 最近在用android sdk manager 更新sdk的时候 发现无法更新了? Failed to fetch URL https://dl-ssl.google.

Android 中使用 AsyncTask 异步读取网络图片_Android

 1.新建Android工程AsyncLoadPicture 新建布局文件activity_main.xml主界面为一个GridView,还有其子项布局文件gridview_item.xml 2.功能主界面MainActivity.java,主代码如下 package com.example.asyncloadpicture; import java.util.ArrayList; import android.app.Activity; import android.content.Conte

Android 中使用 AsyncTask 异步读取网络图片

1.新建Android工程AsyncLoadPicture 新建布局文件activity_main.xml主界面为一个GridView,还有其子项布局文件gridview_item.xml 2.功能主界面MainActivity.java,主代码如下 package com.example.asyncloadpicture; import java.util.ArrayList; import android.app.Activity; import android.content.Contex

Android中通过AsyncTask类来制作炫酷进度条的实例教程_Android

AsyncTask (API level 3,所以几乎所有目前在市面上流通的 Android 版本皆可使用) 是除 Thread 外的另一种选择,Android 团队鼓励主执行绪(UI thread) 专注于操作 & 画面的流畅呈现, 其余工作 (如网络资料传输.档案/磁碟/资料存取) 最好都在背景执行: Thread 通常要搭配 Handler 使用,而 AsyncTask 用意在简化背景执行 thread 程序码的撰写. 如果您预期要执行的工作能在几秒内完成,就可以选择使用 AsyncTas

Android多线程编程AsyncTask详解教程

Android中多线程编程中AsyncTask类的详细解释1.Android单线程模型2.耗时操作放在非主线程中执行 Android主线程和子线程之间的通信封装类:AsyncTask类1.子线程中更新UI2.封装.简化异步操作.3.AsyncTask机制:底层是通过线程池来工作的,当一个线程没有执行完毕,后边的线程是无法执行的.必须等前边的线程执行完毕后,后边的线程才能执行. AsyncTask类使用注意事项: 1.在UI线程中创建AsyncTask的实例2.必须在UI线程中调用AsyncTas

简介Android 中的AsyncTask

AsyncTask是一个很常用的API,尤其异步处理数据并将数据应用到视图的操作场合.其实AsyncTask并不是那么好,甚至有些糟糕.本文我会讲AsyncTask会引起哪些问题,如何修复这些问题,并且关于AsyncTask的一些替代方案. AsyncTask 从Android API 3(1.5 Cupcake)开始,AsyncTask被引入用来帮助开发者更简单地管理线程.实际上在Android 1.0和1.1也是有类似的实现,那就是UserTask.UserTask和AsyncTask有着相

Android编程实现动态更新ListView的方法_Android

本文实例讲述了Android编程实现动态更新ListView的方法.分享给大家供大家参考,具体如下: 有时候我们需要修改已经生成的列表,添加或者修改数据,notifyDataSetChanged()可以在修改适配器绑定的数组后,不用重新刷新Activity,通知Activity更新ListView.今天的例子就是通过Handler AsyncTask两种方式来动态更新ListView.从今天起,每次学习的源代码都会打包上传,方便各位同学学习,注册帐号即可下载. 布局main.xml: <?xml

Android 通过ContentProvider数据库更新UI

这篇用到的知识点有几个:SQLiteOpenHelper,Cursor,CursorAdapter,ContentProvider,ContentObserver 对于数据库的操控一般都是用SQLiteOpenHelper,创建该类实例,可以得到一个SQLiteDatabase,而实际上操作数据库用的还是这个. (一)我们先看下SQLiteOpenHelper这个类的实例 package com.bvin.study.observer; import android.content.Contex