实现跑马等效果,如果想要实现,头部跟尾部同时出现在一个屏幕中的话,应该使用两个 Label 比较好实现,于是有了以下思路.
@interface JDMarqueeView ()
@property (nonatomic,copy) NSString *msg; //需要展示的消息
@property (nonatomic,assign) CGFloat textW; //文字长度
@property (nonatomic,retain) UILabel *firstLabel; //跑马灯的两个 label
@property (nonatomic,retain) UILabel *secondLabel;
@end
@implementation JDMarqueeView
- (instancetype)initWithFrame:(CGRect)frame andMessage:(NSString *)message
{
self = [super initWithFrame:frame];
if (self) {
self.clipsToBounds =YES;
//为了两个 label 不至于文字连在一起
_msg = [NSString stringWithFormat:@" %@ ",message];
[self createUI];
}
return self;
}
- (void)createUI {
_firstLabel =[JDUtils createLabelWithFrame:CGRectZero Font:14 Text:_msg];
_firstLabel.textAlignment