我正在尝试在android中获取时间戳,这是我的代码;
public String getTimestamp() {
String timestamp = DateFormat.getDateTimeInstance().format(new Date());
return timestamp;
}
当我创建一个变量来显示时间戳时。
Ex)String timestamp = getTimestamp();
这应该将当前时间戳保存为字符串。但是,当我打印此字符串'timestamp'时,它会像时钟一样实时更新。我只想要当前的时间戳。我没有在for循环或任何可能正在更新的任何东西中。
这是打印出来的地方:
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rootView = inflater.inflate(R.layout.single_list_item, parent, false);
TextView nameView = (TextView) rootView.findViewById(R.id.idView);
GeLoBeacon beacon = beacons.get(position);
if (!beaconsFound.contains(Integer.toString(beacon.getBeaconId()))) {
beaconsFound.add(Integer.toString(beacon.getBeaconId()));
}
String times = getTimestamp();
nameView.setText(times);
return rootView;
}
答案 0 :(得分:1)
您的方法getView()在适配器的每个项目上调用,因此在每个项目上设置不同的时间。在调用方法listView.setAdapter()
之前,将时间戳设置为适配器中的字段变量答案 1 :(得分:0)
你走了:
public String getTimestamp() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
return sdf.format(new Date());
}
更改格式(“yyyy-MM-dd'T'HH:mm:ss”)并以特定格式获取日期!
答案 2 :(得分:0)
将timeStamp定义为字段变量,然后使用setTimeStamp(){//分配当前时间}和getimeStamp(){return timeStamp;)来读取timeStamp值。