2010-06-22 42 views
5

Tôi mới làm việc với bộ hẹn giờ trên iPhone và sẽ cần một số hỗ trợ.Gọi phương thức NSTimer

Tôi có một phương pháp như dưới đây dành thời gian và cập nhật UILabel trong số userinterface của tôi. Tôi cũng có một số NSTimer gọi phương thức đó một lần một giây (tôi chỉ hiển thị giờ và phút). Điều này chỉ hoạt động tốt, ngoại trừ giây đầu tiên Ứng dụng đang hoạt động (vì tôi hiểu phải mất một giây trước khi gọi phương thức timer).

Tôi muốn gọi phương thức của mình từ viewDidLoad, nhưng làm cách nào tôi có thể cung cấp các đối số phù hợp? Hoặc có cách nào tốt hơn để làm điều này?

// Timer for updating time 
[NSTimer scheduledTimerWithTimeInterval:1.0f 
           target:self 
           selector:@selector(updateTime:) 
           userInfo:nil 
           repeats:YES]; 


-(void)updateTime: (NSTimer *) timer { 

    currentTime = [NSDate date]; 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    // display in 12HR/24HR (i.e. 11:25PM or 23:25) format according to User Settings 
    [dateFormatter setTimeStyle:NSDateFormatterShortStyle]; 
    NSString *currentTimeString = [dateFormatter stringFromDate:currentTime]; 
    [dateFormatter release]; 

    timeLabel.text = currentTimeString; 
} 

Đánh giá cao mọi thứ sẽ hướng tôi đi đúng hướng.

Trả lời

2

Trong phương pháp của bạn, bạn không sử dụng biến hẹn giờ phải không? Vì vậy, tại sao chỉ cần gọi [self updateTime:nil]. Điều đó sẽ làm việc

+0

Có bạn là đúng. Một giải pháp đơn giản và gọn gàng như vậy. Đã kiểm tra và đang hoạt động tốt. Cảm ơn! Dường như cũng là giải pháp có "lửa" mà bạn có thể kích hoạt sự kiện hẹn giờ nhưng tôi chưa có thời gian để thử nghiệm. – Structurer

2

hơn Một lựa chọn ... bạn có thể làm:

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

[NSTimer scheduledTimerWithTimeInterval:1.0f 
           target:self 
           selector:@selector(updateTime:) 
           userInfo:nil 
           repeats: YES]; 
+0

Cảm ơn Horace. Tôi nghĩ rằng tôi sẽ đi cho giải pháp vodkhangs mặc dù. – Structurer

Các vấn đề liên quan