我想将当前日期保存到listview中的textview我还有其他所有设置,所以不需要帮助那里只是将日期保存到textview我的代码如下可以有人告诉我什么错误?
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
Date date = new Date(System.currentTimeMillis());
long millis = date.getTime();
SharedPreferences prefs =
PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = prefs.edit();
editor.putLong("time", date.getTime());
editor.commit();
SimpleDateFormat sdf = new SimpleDateFormat("M/d/y H:m");
String biggie = sdf.format(date);
Date myDate = new Date(prefs.getLong("time", 0));
holder.day.setText();
if(convertView == null){
LayoutInflater inflator =
(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflator.inflate(R.layout.list_item, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder)convertView.getTag();
}
holder.gump.setText(argueList.get(position));
}
答案 0 :(得分:0)
这里有很多要点。
首先,当系统绘制列表中的每个元素时,将调用数组适配器中的getView
方法。在那里创建任何变量是不好的做法,因为它会一遍又一遍地做,快速浪费内存并强制垃圾收集器运行。首先,将所有初始化移出方法。
其次,目前还不清楚你在这里要做什么。如果您只想在listview
上显示每个条目的日期,只需将日期作为字符串(在getview方法之外 - 在用户查看视图时日期不太可能改变)并设置文本到getView
末尾的dateString。
如果您只想做这件事,那么根本不需要这里的偏好......
你能提供更多关于你想要完成的事情的信息吗?