Android ListView标头
我有ListView,它有一些事件。事件按日排序,我希望每天都有标题日期,然后在下面收听事件。
以下是我填充该列表的方式:
ArrayList<TwoText> crs = new ArrayList<TwoText>();crs.add(new TwoText("This will be header", event.getDate()));for (Event event : events) { crs.add(new TwoText(event.getStartString() + "-" + event.getEndString(), event.getSubject()));}arrayAdapter = new TwoTextArrayAdapter(this, R.layout.my_list_item, crs);lv1.setAdapter(arrayAdapter);
这就是我的类TwoText看起来的样子:
public class TwoText { public String classID; public String state; public TwoText(String classID, String state) { this.classID = classID; this.state = state; }}
这就是我的TwoTextArrayAdapter类的外观:
import java.util.ArrayList;import android.app.Activity;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ArrayAdapter;import android.widget.TextView;public class TwoTextArrayAdapter extends ArrayAdapter<TwoText> { private ArrayList<TwoText> classes; private Activity con; TextView seperator; public TwoTextArrayAdapter(Activity context, int textViewResourceId, ArrayList<TwoText> classes) { super(context, textViewResourceId, classes); this.con = context; this.classes = classes; } @Override public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; if (v == null) { LayoutInflater vi = (LayoutInflater) con.getSystemService(Context.LAYOUT_INFLATER_SERVICE); v = vi.inflate(R.layout.my_list_item, null); }
我现在所做的是我正在添加标题,就像常规列表对象一样,但我喜欢它作为标题,在我的情况下有一个日期。
我尝试在必要时隐藏它并在必要时显示它但我只是弄乱了我的其余代码。我尝试了更多的教程,但他们也有同样的效果。
任何人都可以指导我如何做到这一点吗?
慕后森
相关分类