TPBottomLockBar
TPBottomLockBar is a UIView subclass providing the handful of action sliders in SpringBoard.
Subclassing
@interface MyBottomLockBar: TPBottomLockBar
@end
@implementation MyBottomLockBar
+ (float)defaultLabelFontSize {
//default font size for the label
return 20.0f;
}
- (id)initWithFrame:(CGRect)frame knobImage:(UIImage *)knobImage {
if((self = [super initWithFrame:frame knobImage:knobImage]) != nil) {
} return self;
}
- (BOOL)allowsTouchTrackingBeyondVerticalThreshold {
//allows for continuation of tracking if the UITouch strays outside the view
return YES;
}
- (BOOL)usesBackgroundImage {
//Use the default background image, the background to the slide to unlock view on the lock screen
return NO;
}
- (void)unlock {
//When the user has completed the unlock gesture
}
- (id)wellImageName {
// the well image that the knob slides in, images are inside of the TelephonyUI.framework
//this is the background image used in the notifications on the lockscreen
return @"BulletinWellLock";
}
- (float)knobTrackInsetLeft {
//set the inset of where the knob view starts, based off it's superview
return 18.0f;
}
- (float)knobTrackInsetRight {
//set the where the knob finishes, when it slides all the way
return 18.0f;
}
- (float)_calcKnobYOffset {
// move the knob up or down
return 0.0f;
}
- (void)downInKnob {
//When the user presses down on the knob
}
- (void)upInKnob {
//user lifts up on knob
}
@end
Miscellany
The text label includes features such as the animating text and cycling through multiple text labels.
TPBottomLockBar *myTPBottomLockBar = [[TPBottomLockBar alloc] initWithFrame:CGRectZero knobImage:nil];
// Single Label
[myTPBottomLockBar setLabel:@"blah blah blah"];
// Multiple Labels
[myTPBottomLockBar setLabels:[NSArray arrayWithObjects:@"Label 1",@"Label 2", @"Label 3",nil]];
// Cycling Labels
[myTPBottomLockBar startCyclingLabels];
[myTPBottomLockBar stopCyclingLabels];
[myTPBottomLockBar cycleToNextLabel];
[myTPBottomLockBar cycleToLabelAtIndex:index];
// Text Animation
[myTPBottomLockBar startAnimating];
[myTPBottomLockBar stopAnimating];
// Change Font Size
[myTPBottomLockBar setFontSize:20.0f];
|