0

我正在开发一个应用程序,我使用 ListView 制作日历,就像这篇文章中的图片一样。我已经能够构建 ListView 但我在月份标题和月份中的天数方面遇到了一些问题有人可以在这方面帮助我吗

我的 getView 方法是

public View getView(int pos, View v, ViewGroup p) {
    if (DateHelper.isHeaderEnabled(pos,cal)) {
        View rowView = mContext.getLayoutInflater().inflate(
                R.layout.calendar_list_row_month_header, null);
        final TextView headerTextView = (TextView) rowView
                .findViewById(R.id.month_header_textView);
        SimpleDateFormat sdf = new SimpleDateFormat("MMMM yyyy");

        System.out.println(cal.getActualMaximum(Calendar.DAY_OF_MONTH));
        cal.setTime(current);
        cal.set(Calendar.MONTH, (cal.get(Calendar.MONTH) + pos / 30));
        current = cal.getTime();
        headerTextView.setText(sdf.format(current));
        return rowView;
    } else {
        View rowView = mContext.getLayoutInflater().inflate(
                R.layout.calendar_list_row, null);
        TextView dayTextView = (TextView) rowView
                .findViewById(R.id.weekDaytextView);
        TextView weekDay = (TextView) rowView
                .findViewById(R.id.dateTextView);
        dayTextView.setText("" + pos % 30);
        weekDay.setText(DateHelper.getDayName(pos));
        daysPos = daysPos + 1;
        return rowView;
    }
}

在此处输入图像描述

问候
阿尔塔夫

4

1 回答 1

0

让您的 listadapter 接受 List Object>。然后对于月份标题传递字符串。

在适配器的 getView() 方法中,检查当前对象是哪个类。

如果课程是您的日期,请使用标准布局,如果您的课程是字符串,请使用标题布局。

于 2012-09-26T09:53:03.510 回答