ios 7中未声明的选择器警告

时间:2014-02-01 05:17:47

标签: ios iphone objective-c selector nstimer

我正在使用NSTimer创建一个欢迎标签,但它显示了一些警告

喜欢

  

未声明的选择器可隐藏和未使用的变量计时器

我之前没有使用NSTimer可以请一次告诉我哪里做错了,wt是正确的做法。我需要在应用程序加载几个小时之后给它一个欢迎消息它必须消失

我试过这个我无法得到帮助我

这是我必须在视图didload中使用的代码

NSTimer  * timer = [NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(hideLabel:) userInfo:nil repeats:NO];

在故事板中,我使用了ib标签,我想显示消息

@property (strong, nonatomic) IBOutlet UILabel *wel;

请任何人告诉wt是制作这个的正确方法..

4 个答案:

答案 0 :(得分:4)

你还没有声明hideLabel方法。因此它会发出警告

[NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(hideLabel:) userInfo:nil repeats:NO];

-(void)hideLabel:(NSTimer *)timer{
 myLabel.hidden=YES;
}

答案 1 :(得分:1)

试试这个

    [NSTimer scheduledTimerWithTimeInterval:0.3 target:self selector:@selector(timerCalled) userInfo:nil repeats:YES];
    -(void)timerCalled
    {
         NSLog(@"Timer Called...");
    }

答案 2 :(得分:1)

根据你的代码,你没有在其他任何地方使用计时器,也没有重复射击。然后您可以使用以下代码..

[self performSelector:@selector(hideLabel:) withObject:yourLabel afterDelay:60]; 

重要的是,定义目标方法

-(void)hideLabel:(UILabel*)label
{
    // your code here...
     label.text = @"Fired...";
}

答案 3 :(得分:0)

如果您不需要使用NSTimer(额外使用)对象,那么您应该创建NSTimer,例如,

[NSTimer scheduledTimerWithTimeInterval:60.0f    target:self selector:@selector(hideLabel:) userInfo:nil    repeats:NO];

然后你需要在激活(60秒)计时器之后另外声明计时器的方法,你将收到错误。

- (void)hideLabel:(NSTimer *)theTimer
{
   // Timer method code;
}