在 UILabel 中,您可以显示一个字符串以便逐个字符地填充吗?例如,如果标签文本是“IPHONE”,我想显示“I”,然后是“IP”,然后是“IPH”,一直到“IPHONE”。
我怎么能以这种方式让标签显示文本?
所以你想显示一个字符串的第一个字母,然后在一段时间后显示它的第二个字母,等等。解决方案:使用一个定期调用方法的计时器;该方法将适当地设置文本:
NSString *theTextToDisplay = @"Hello world!";
[NSTimer scheduledTimerWithTimeInterval:0.33
target:self
selector:@selector(timerShoot:)
userInfo:nil
repeats:YES];
- (void)timerShoot:(NSTimer *)tmr
{
static int pos = 1;
theUILabel.text = [theTextToDisplay substringToIndex:pos];
if (++pos > theTextToDisplay.length) {
[tmr invalidate];
}
}
这只是一个例子,只是一个用动画逐一显示文本的逻辑。
首先添加UILable
带有波纹管的框架,然后设置如下文本...
yourLable.frame = CGRectMake(0, 112, 0, yourLable.frame.size.height);
yourLable.text = @"IPHONE";
之后,当您想显示UILable
-(IBAction)btnLableShow_Clicked:(id)sender
{
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.8];
yourLable.frame = CGRectMake(0, 112, 220, yourLable.frame.size.height); // set width with your requirement
[UIView commitAnimations];
}