我使用TapkuLibrary作爲我的日曆。我想更改事件標記,例如在本月的某些日子顯示不同的操作。我想實現類似於第二個圖像的東西。如何更改TapkuLibrary日曆對象上的事件標記
默認TapkuLibrary日曆
我要像這樣的事情
我使用TapkuLibrary作爲我的日曆。我想更改事件標記,例如在本月的某些日子顯示不同的操作。我想實現類似於第二個圖像的東西。如何更改TapkuLibrary日曆對象上的事件標記
默認TapkuLibrary日曆
我要像這樣的事情
使用波紋管方法,而不是 - 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);
}
}
感謝您的回答,我想做類似的事情。 – iOSDev
注:我首先要解釋Tapku目前如何繪製MonthView標記,然後我會提出一種方法來改變它。
Tapku實際上並沒有將這些標記設置爲圖像;它將它們設置爲字符串!搜索TKCalendarMonthView for•。這些標記在TKCalendarMonthView的兩個不同位置中設置:首先,在drawTileInRect:day:mark:font ...方法中,它在drawRect方法中分別在每個tile上調用。其次,將屬性「點」應用於具有不同文本顏色等的用戶「選定」單元格,因此需要調整其自己的屬性。
要設置您自己的圖像,您必須在這兩個地方修改Tapku(不是非常困難;這是一個非常容易訪問的項目)。因此,您不必將單元格的文本設置爲•,而必須將其圖像設置爲您提供的圖像。
提供此圖像可以通過幾種不同的方式完成。最直接的將是重做Tapku的'標記'數組(由代表設置)的概念。也許你可以創建一個UIImage數組,而不是創建一個整數數組。不過,你需要有一種方法來告訴代碼「無圖像」 - 也許有一個空白圖像,並將其默認應用於單元格?
讓我知道你是否需要任何澄清。
你有沒有在一個月內對多種顏色的日曆進行任何示例修改? – parag
有你按你的顯示第二圖像做出的是定製壓延機,如果是,那麼請幫助我。我想像你在圖2中顯示的那樣製作同樣的日曆。我已經嘗試了很多,但我失敗了 – parag