Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 自定义列表视图(数据)_Android_Listview - Fatal编程技术网

Android 自定义列表视图(数据)

Android 自定义列表视图(数据),android,listview,Android,Listview,嗨,同志们,我想在2014年4月13日的表格输出中: 主要 我收到一个错误: 04-13 07:42:13.559 862-862/com.example.listview E/AndroidRuntime﹕ 致命异常:主 java.lang.ClassCastException:java.util.Date不能强制转换为java.lang.CharSequence 为什么?怎么带约会?你有 holder.txtDesc.setText((CharSequence) rowItem.getPos

嗨,同志们,我想在2014年4月13日的表格输出中:

主要

我收到一个错误:

04-13 07:42:13.559 862-862/com.example.listview E/AndroidRuntime﹕ 致命异常:主 java.lang.ClassCastException:java.util.Date不能强制转换为java.lang.CharSequence

为什么?怎么带约会?你有

holder.txtDesc.setText((CharSequence) rowItem.getPostDate());
您正在将日期转换为CharacterSequence。setText将CharacterSequence作为参数。 您需要做的是将日期转换为字符串,然后将其设置为textview

Context context;


public CustomListViewAdapter(Context context, int resourceId,
                             List<RowItem> items) {
    super(context, resourceId, items);

    this.context = context;
}

/*private view holder class*/
private class ViewHolder {
    ImageView imageView;
    TextView txtTitle;
    TextView txtDesc;
}

public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder = null;
    RowItem rowItem = getItem(position);

    LayoutInflater mInflater = (LayoutInflater) context
            .getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.list_item, null);
        holder = new ViewHolder();
        holder.txtDesc = (TextView) convertView.findViewById(R.id.desc);
        holder.txtTitle = (TextView) convertView.findViewById(R.id.title);
        holder.imageView = (ImageView) convertView.findViewById(R.id.icon);
        convertView.setTag(holder);
    } else
        holder = (ViewHolder) convertView.getTag();

    holder.txtDesc.setText((CharSequence) rowItem.getPostDate());
    holder.txtTitle.setText(rowItem.getTitle());
    holder.imageView.setImageResource(rowItem.getImageId());

    return convertView;
}
}
public class RowItem {
private int imageId;
private String title;
private Date postDate;

public RowItem(int imageId, String title, Date postDate) {
    this.imageId = imageId;
    this.title = title;
    this.postDate = postDate;
}
public int getImageId() {
    return imageId;
}
public void setImageId(int imageId) {
    this.imageId = imageId;
}
public Date getPostDate() {
    return postDate;
}

public void setPostDate(Date postDate) {
    this.postDate = postDate;
}

public String getTitle() {
    return title;
}
public void setTitle(String title) {
    this.title = title;
}
@Override
public String toString() {
    return title + "\n" + postDate;
}

}
holder.txtDesc.setText((CharSequence) rowItem.getPostDate());
Format formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String datestring = formatter.format(rowItem.getPostDate());
holder.txtDesc.setText(datestring);