应用程序未在活动

时间:2015-11-01 08:16:20

标签: java android listview android-intent

我有两项活动 1.列表视图(多个项目,每个项目都有标题和链接) 2.文本视图(单击列表视图中的任何项目,获取链接,执行xml解析并获取内容并显示)

我曾意图从列表视图切换到文本视图活动。现在,在第一次单击时,它将启动文本视图活动。在按下设备后退按钮时,它再次进入列表视图。现在就可以了。

主要问题是,当第二次,我点击列表视图中的任何项目时,Android应用程序给我错误“遗憾的是应用程序已经停止”。 单击“确定”,显示第二个项目的内容。当第二次按下按钮时,应用程序关闭了

这是我的第二项活动

public class ColoumnView extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_coloumn_view);
    Intent intent = getIntent();
    String message = intent.getStringExtra(MainListActivity.EXTRA_MESSAGE);
    TextView myColoumnView = (TextView)findViewById(R.id.ColoumnView);
    myColoumnView.setText(message);
}
@Override
public void onBackPressed()
{
    // code here to show dialog
    super.onBackPressed();
    finish();
}

以下是我创建意图

的第一个活动的一部分
protected void onPostExecute(List<ContentGetter.Content> contents) {
        if (contents != null && mException == null) {
            for(int i=0; i<contents.size();i++) {
                if(contents.get(i).summary != null )
                {
                    summaryContent= contents.get(i).summary;
                }
                else {
                    continue;
                }
                Intent intent = new Intent(MainListActivity.this,ColoumnView.class);
                intent.putExtra(EXTRA_MESSAGE, summaryContent);
                startActivity(intent);
                Log.d(TAG, contents.get(i).summary != null ? contents.get(0).summary : "NULL");
            }

        } else {
            if (mException instanceof IOException){
            } else if (mException instanceof XmlPullParserException) {
            }
        }


    }

编辑:这是崩溃日志

11-01 13:11:46.274    2296-2296/com.example.talha.appforblog E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.talha.appforblog, PID: 2296
java.lang.NullPointerException: println needs a message
        at android.util.Log.println_native(Native Method)
        at android.util.Log.d(Log.java:139)
        at com.example.talha.appforblog.MainListActivity$DownloadXmlTaskContent.onPostExecute(MainListActivity.java:241)
        at com.example.talha.appforblog.MainListActivity$DownloadXmlTaskContent.onPostExecute(MainListActivity.java:206)
        at android.os.AsyncTask.finish(AsyncTask.java:632)
        at android.os.AsyncTask.access$600(AsyncTask.java:177)
        at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5221)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)

2 个答案:

答案 0 :(得分:1)

问题在于活动MainListActivity的第241行。你正在那里打印一个打印没有正确的消息打印时间是评论该行。如果您共享该行中的代码行,可以帮助我缩小范围

答案 1 :(得分:0)

看起来这样做......

Log.d(TAG,contents.get(i).summary!= null?contents.get(0).summary:&#34; NULL&#34;);

确保您的日志消息不为null,在本例中为contents.get(0).summary。