안드로이드 공부하면서 처음으로 캘린더를 만들어봤습니다.

달력을 GridView로 정의했는데 다음과 같이 getView에서 일일이 날짜별 TextView를 생성해주었습니다.

    public View getView(int position, View oldView, ViewGroup parent) {
        View v;
        if (position < 8) { // 제목 행
            if (oldView == null) {
                v = new TextView(mContext);
            }
            else {
                v = oldView;
            }
        }
      .....


월 이동시에도 다음과 같이 Adapter를 다시 붙여 주었고요

    private void setCalendar(Calendar cal) {
       
        if (mCalendarAdapter == null)
            mCalendarAdapter = new MonthlyCalendarAdapter(this, cal);
        else
            mCalendarAdapter.setBaseDate(cal);
           
        GridView gridview = (GridView) findViewById(R.id.gridview);
        gridview.setAdapter(mCalendarAdapter);
    }

원래 그런건지 에뮬에서 돌려보니 너무 느리네요.
GridView에서 Grid별 View를 조작하는 보다 효율적인 방법이 없는지 고수님들의 조언 부탁합니다.

소스 첨부하니 기타 구현방식에 대한 조언 주시면 감사하겠습니다.