public View getView(int position, View oldView, ViewGroup parent) {
View v;
if (position < 8) {
if (oldView == null) {
v = new TextView(mContext);
((TextView)v).setGravity(Gravity.CENTER);
((TextView)v).setText(mWeekTitleIds[position]);
((TextView)v).setTextColor(mContext.getResources().getColor(mWeekColorIds[position]));
}
else {
v = oldView;
}
}
else if (position % 8 == 0) {
if (oldView == null) {
v = new Button(mContext);
((Button)v).setGravity(Gravity.CENTER);
((Button)v).setText(Integer.toString(position/8));
int nDay = getDayFromPosition(position) + 1;
Calendar c = (Calendar)mBaseDate.clone();
c.set(Calendar.DATE, nDay);
v.setTag(c);
((Button)v).setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Calendar c = (Calendar)v.getTag();
if (c == null) return;
Calendar c1 = (Calendar)c.clone();
c1.add(Calendar.DATE, 6);
DateFormat df = DateFormat.getDateInstance();
new AlertDialog.Builder(v.getContext())
.setTitle(((Button)v).getText() + System.getProperty("line.separator")
+ df.format(new Date(c.getTimeInMillis())) + " ~ " + df.format(new Date(c1.getTimeInMillis())))
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
dialog.dismiss();
}
})
.show();
}
});
}




-_-;;