您可以將細胞backgroundView
屬性設置爲的UIView的定製子類,有一個類似的drawRect
方法:
- (void)drawRect:(CGRect)rect {
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBFillColor(context, 1.0, 1.0, 1.0, 1.0);
CGContextFillRect(context, rect);
CGRect blueRect = CGRectMake(0, 0, self.bluePercentage/100.0*rect.size.width, rect.size.height);
CGContextSetRGBFillColor(context, 0.0, 0.0, 1.0, 1.0);
CGContextFillRect(context, blueRect);
CGRect greenRect = CGRectMake(0, 0, self.greenPercentage/100.0*rect.size.width, rect.size.height);
CGContextSetRGBFillColor(context, 0.0, 1.0, 0.0, 1.0);
CGContextFillRect(context, greenRect);
}
你明白了吧:用白色填充第一個(默認的背景是黑色的) ,在它上面畫藍條,在藍條上畫綠條。 bluePercentage
和redPercentage
是您必須自行設置的屬性。
此外,每次更新進度時,您都必須致電[cell setNeedsDisplay]
以告知單元重新繪製進度欄。
我想我不明白「多少等待時間已經播放」 – AMayes 2013-03-21 19:19:28
@AMayes因此,Cue佔用的總時間是等待時間+歌曲的長度。條形圖表示總共使用了多少時間,綠色/藍色表示該部分時間是等待以及音樂是什麼。 – 2013-03-21 20:27:12
您可以嘗試使用自定義滑塊。他們很容易定製。 – AMayes 2013-03-21 21:48:59