00601Calendar

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/FrameLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/hello_world"
android:textSize="32sp"
android:typeface="monospace" />
</FrameLayout>
package com.example.app6_1;
import java.util.Calendar;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.method.LinkMovementMethod;
import android.text.style.BackgroundColorSpan;
import android.text.style.ClickableSpan;
import android.text.style.ForegroundColorSpan;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) this.findViewById(R.id.textView1);
StringBuilder sb = new StringBuilder();
Calendar today = Calendar.getInstance();
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, 1);
sb.append("SU MO TU WE TH FR SA\n");
int pos = 0;
for (int i = 1; i < cal.get(Calendar.DAY_OF_WEEK); i++) {
sb.append(" ");
}
for (int i = 1; i <= cal.getActualMaximum(Calendar.DAY_OF_MONTH); i++) {
if (i == today.get(Calendar.DAY_OF_MONTH)) {
pos = sb.length();
}
sb.append(String.format("%02d ", i));
if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
sb.append("\n");
}
cal.add(Calendar.DAY_OF_MONTH, 1);
}
SpannableString ss = new SpannableString(sb.toString());
ss.setSpan(new ForegroundColorSpan(Color.RED), pos, pos + 2, 0);
ss.setSpan(new BackgroundColorSpan(Color.YELLOW), pos, pos + 2, 0);
ss.setSpan(new ClickableSpan() {
@Override
public void onClick(View arg0) {
Toast.makeText(MainActivity.this, "21:00要和女孩子約會",
Toast.LENGTH_SHORT).show();
}
}, pos, pos + 2, 0);
textView.setText(ss);
textView.setMovementMethod(LinkMovementMethod.getInstance());
}
}