2011-08-02 6 views
1

내 캘린더에 TapkuLibrary를 사용합니다. 예를 들어 특정 날짜에 다른 작업을 표시하기 위해 이벤트 표시를 변경하려고합니다. 두 번째 이미지와 같은 것을 얻고 싶습니다. TapkuLibrary 캘린더 개체에서 이벤트 표시를 변경하는 방법

기본 TapkuLibrary 일정

Default TapkuLibrary calendar 나는이

I want to like something like this

+0

확인 예 다음 pls는 저를 도와 주면 당신이 디스플레이 두 번째 이미지가 당에 손님의 달력을 만들었습니다. 나는 당신이 이미지 2에 표시하는 것과 같은 캘린더를 만들고 싶습니다. 나는 많이 시도했지만 실패했습니다 – parag

답변

2

사용 울부 짖는 방법 - 1 개월 여러 색상 DrawTileInRect 는, 날짜

- (void) drawTileInRect:(CGRect)r day:(int)day mark:(BOOL)mark font:(UIFont*)f1 font2:(UIFont*)f2 sysFlag:(int)sysFlg userEventFlg:(int)userEventFlag diaryFlg:(int)diaryFlag momentsFlg:(int)momentsFlag 
{ 
    
    @try { 
         
        NSString *str = [NSString stringWithFormat:@"%d",day]; 
        [str retain]; 
         
         
        r.size.height -= 2; 
        [str drawInRect: r 
               withFont: f1 
          lineBreakMode: UILineBreakModeWordWrap 
              alignment: UITextAlignmentCenter]; 
         
        r.size.height = 10; 
        r.origin.y += 18; 
         
        CGRect y=CGRectMake(r.origin.x+5, r.origin.y-25, 12, 12);//5 5 
         
         
        CGRect rect1=CGRectMake(r.origin.x, r.origin.y+7, 12, 12); 
        CGRect rect2=CGRectMake(rect1.origin.x+18, r.origin.y+7, 12, 12); 
        CGRect rect3=CGRectMake(rect2.origin.x+16, r.origin.y+7, 12, 12); 
         
        if(sysFlg==1) 
        { 
            [[UIImage imageNamed:@"Blue_dot.png"] drawInRect:y]; 
        } 
         
        if(userEventFlag==1)//1.png 
        { 
            [[UIImage imageNamed:@"Yellow_dot.png"] drawInRect:rect1]; 
        } 
        
         
        if(momentsFlag==1)//3.png 
        { 
            [[UIImage imageNamed:@"Red_dot.png"] drawInRect:rect3]; 
        } 
         

    } 
    @catch (NSException * e) { 
        NSLog(@"Exception: %@", e); 

    } 
} 
+0

답변을 주셔서 감사합니다. 나는 비슷한 것을하고 싶었습니다. – iOSDev

3

N.B. 같은 것을 좋아 할

Tapku가 현재 MonthView 표시를 그려 놓은 방법을 먼저 설명하고 나서 그것을 변경하는 방법을 제안 할 것입니다.

Tapku는 실제로 이러한 마크를 이미지로 설정하지 않습니다. 그것들을 문자열로 설정합니다! TKCalendarMonthView에서 다음을 검색하십시오. 표시는 TKCalendarMonthView의 두 개의 다른 위치에 설정됩니다. 첫째, drawRect 메서드에서 각 타일에 개별적으로 호출되는 drawTileInRect : day : mark : font ... 메서드입니다. 둘째로, '도트'속성은 사용자의 '선택된'셀에 적용됩니다.이 셀은 다른 텍스트 색상을 가지므로 자체 속성을 조정해야합니다.

자신 만의 이미지를 설정하려면 두 위치에서 Tapku를 수정해야합니다 (그리 어렵지는 않지만 접근하기 쉬운 프로젝트입니다). 따라서 셀의 텍스트를 •로 설정하는 대신 제공하는 이미지로 이미지를 설정해야합니다.

이 이미지는 몇 가지 다른 방법으로 제공 될 수 있습니다. Tapku의 개념 인 'marks'배열을 재실행하는 것이 가장 간단합니다 (대리인이 설정). 정수 배열을 만드는 대신 UIImages 배열을 만들 수 있습니다. 그래도 코드에 "이미지 없음"이라고 말할 수있는 방법이 있어야합니다. 빈 이미지가 있고 기본적으로 셀에 적용하면됩니다.

설명이 필요하면 알려주세요. 대신

+0

한 달 동안 여러 색상의 캘린더 샘플 수정본을 가지고 계신가요? – parag

관련 문제