java - 通过 Activity 传递 date.getTime,在目标 Activity 中使用 date.setTime,获取 NullPointerException

标签 java android date

我想通过 Activity 发送某个date.getTime(),然后在目标 Activity date.setTime()中设置它。这是我的代码:

发送 Activity :

[...]

listview.setOnItemClickListener(new OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                    // Send single item click data to SingleItemView Class
                    Intent i = new Intent(RecentSightings.this,
                        AlertViewOnMap.class);
                    // Pass data "name" followed by the position
                    i.putExtra("createdAt", alertsList.get(position).getCreatedAt().getTime());

                    startActivity(i);

                }


            });

[...]

这是接收 Activity :

package com.fourbox.bocterapp;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;


import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
import com.google.android.gms.maps.model.CameraPosition;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;
import com.parse.ParseGeoPoint;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.ArrayList;

public class AlertViewOnMap extends Activity {

    public Date alertTime;

    DateFormat dateFormat = new SimpleDateFormat("HH:mm");


protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    this.setContentView(com.fourbox.bocterapp.R.layout.details_design);

    alertTime.setTime(getIntent().getLongExtra("createdAt", 0));

[...]

我已经检查了调试器,并且发送 Activity 正确发送了长变量(毫秒),但是当它达到“alertTime.setTime([...])”时,我收到以下错误:

FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity >>ComponentInfo{com.fourbox.bocterapp/com.fourbox.bocterapp.AlertViewOnMap}: >>java.lang.NullPointerException

我无法意识到自己做错了什么。你能帮我吗?

谨致敬意。

最佳答案

您忘记在接收 Activity 中初始化alertTime变量。 公共(public)日期警报时间 = new Date();

关于java - 通过 Activity 传递 date.getTime,在目标 Activity 中使用 date.setTime,获取 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26434875/

相关文章:

java - 在Java中,静态方法可以返回对象数组作为其结果吗?

java - 如何使用用户标识检索和显示图像

android - CacheDispatcher.java :99 中的 NegativeArraySizeException

java - Android - 获取 View 的可见区域?

javascript - 如何根据用户选择更改日期格式?

java - 如何修复Flink 'error: cannot infer type arguments for FlinkKafkaConsumer011<>'

java - Chain of "instanceof' s”组装一个对象

javascript - 计算日期差异,获取小时、分钟和秒的差异 - 最好通过 js,否则 moment.js

r - R 中日期重叠的按天求和的时间间隔数据

java - Swing invokelater 卡住