viewDidLoad では、ラベルにテキストを表示します
[label setText:@"hello"];
そしてある出来事の後、私はそれを隠します。今、私はチェックする条件が欲しい
if([label.text isEqualToString:@"hello"] is visible on screen for >= 30 seconds)
{
//some code......
}
このチェックを手伝ってください
viewDidLoad では、ラベルにテキストを表示します
[label setText:@"hello"];
そしてある出来事の後、私はそれを隠します。今、私はチェックする条件が欲しい
if([label.text isEqualToString:@"hello"] is visible on screen for >= 30 seconds)
{
//some code......
}
このチェックを手伝ってください
このようなものをお探しですか?
{
//your method.
[label setText:@"hello"];
[self performSelector:@selector(afterDelay) withObject:nil afterDelay:30];
}
-(void)afterDelay {
[label setText:@""];
}
そして、あなたが使用できる条件:
if(label.text.length == 0) {
}
テキストが画面に 30 秒間表示された時間を確認するには、タイマーを使用する必要があります。IO のタイマー クラスはNSTimer
. 詳細については、 Apple Dev Centerを確認してください。
このメソッドを使用して、scheduleTimerWithInterval:target:selector:repeats
繰り返しなしに設定し、時間間隔を 30 秒に設定することをお勧めします。
このコードを試してください:
if ([label.text isEqualToString:@"hello"]) {
NSTimer * tm = [NSTimer scheduledTimerWithTimeInterval:30 target:self selector:@selector(hideLabel) userInfo:nil repeats:NO];
}
-(void)hideLabel {
self.label.hidden = YES;
}