NStimeInterval属性错误

时间:2011-03-07 10:22:13

标签: iphone objective-c xcode nstimeinterval

我的对象声明如下:

my.h

@interface My:NSObject{
    NSTimeInterval time;
}
@property (assign) NSTimeInterval time;
@end

my.m

@implementation My
@synthesize time;
@end

代码中的某个地方:

-(NSTimeInterval)getTimeInterval:(NSString*)timeStr
{
    NSTimeInterval interval;
    //some code
    return interval;
}


-(void) func:(NSString*)timeInterval
{
    My *my = [[My alloc] init];
    my.time = [self getTimeInterval:timeInterval];
}

my.time = [self getTimeInterval:timeInterval];

我收到错误:“'setTime'的参数1的不兼容类型”

谁能告诉我问题出在哪里?

2 个答案:

答案 0 :(得分:0)

你的函数“getTimeInterval”接受一个字符串作为参数,我假设你将NSTimeInterval / double传入函数,导致警告。你应该改变你的

-(NSTimeInterval)getTimeInterval:(NSString*)timeStr 

获取NSTimerInterval的参数(这只是一种说法为double的奇特方式)。如果你想传递一个时间的字符串表示并返回NSTimeInterval,你的代码中就会有一个错误,并且应该将timeInterval变量更改为包含你的时间的字符串变量。

答案 1 :(得分:0)

这在很多方面都很奇怪。

我很确定NSTimeInterval只是double的typedef,这使得属性的定义被赋值为错误。删除它,看它是否有效。