由于字符串数组列表上的空指针异常而无法暂停活动

时间:2013-07-25 05:36:31

标签: java android arraylist sharedpreferences onpause

我的应用程序中有一个字符串数组列表,其中包含从主活动中的网站中提取的数据。我使用onPause()来保存此数组列表中的大小和数据,以便在用户导航回此活动时,数据仍然存在。

截至目前,如果单击列表中的项目,它将按预期打开新活动。按下“后退”键也会导航回主要活动,同时显示列表内容,这也是我想要的。但是,从这里,如果我单击任何列表项,应用程序崩溃。 Logcat针对我的数组列表提到NullPointerException,错误为'Unable to Pause Activity'

我的代码:

对于onPause()

protected void onPause(){
     super.onPause();
     SharedPreferences preferences=PreferenceManager.getDefaultSharedPreferences(this);
     SharedPreferences.Editor sEdit=preferences.edit();
     sEdit.putInt("size",headlinessize);
    for(int i=0;i<headlinessize-1;i++)
    {
         sEdit.putString("link"+i,links.get(i));    
        sEdit.putString("head"+i, headlines.get(i));

    }

     sEdit.commit();

}

对于onCreate()

             SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
    headlinessize=preferences.getInt("size",0);
    for(int j=0;j<headlinessize-1;j++)
    {
              headlines.add(preferences.getString("head"+j,null));
              links.add(preferences.getString("link"+j,null));
    }

我收到了headlines数组列表的错误!

onPause()第一次如何完美运作,并在任何后续项目点击时崩溃应用程序?

其他一些信息:

我在一个单独的线程上连接到互联网,从网站上提取数据,将这些数据传递给更新我的字符串数组列表的处理程序。它还在单独的变量headlinessize中更新数组列表的大小。此外,headlineslinks是相同大小的字符串数组列表。

谢谢!

0 个答案:

没有答案