将 NSTimer 转换为数组索引的 NSUInterval
Convert NSTimer to NSUInterval for Array Index
我想使用 NSTimer 计数从子数组中获取相应的索引位置。
-(void)someMethod: (NSTimer*)t{
NSUInteger *tickNumber = (NSUInteger)t;
NSMutableArray *subArray = [dataPoints objectAtIndex:tickNumber];
//etc...
}
我收到警告:
"Incompatible integer to point conversion initializing NSUInteger
(unsigned long)
如何使用 NSTimer 间隔从子数组索引中提取数据?
编辑:
我误解了 NSTimer 的属性是如何工作的。我认为我可以更轻松地访问计时器的当前间隔。相反,我现在只在循环中使用我自己的内部整数。
NSUInteger frameTicker =0;
-(void)someMethod: (NSTimer*)t{
frameTicker++;
NSMutableArray *subArray = [dataPoints objectAtIndex:frameTicker];
}
无需转换。
对于第一个警告,我们需要知道 "t" 是什么类型,这样我们才能知道如何将其转换为 NSUInteger,转换不起作用。
为了避免出现第二条消息,您应该重命名您的 tickNUmber 或者您可以使用以相同名称声明的 属性 而不是局部变量。
根据@EmilioPelaez,我没有直接使用 NSTimer:
NSUInteger frameTicker =0;
-(void)someMethod: (NSTimer*)t{
frameTicker++;
NSMutableArray *subArray = [dataPoints objectAtIndex:frameTicker];
}
我会称赞他,但他没有post回答。
我想使用 NSTimer 计数从子数组中获取相应的索引位置。
-(void)someMethod: (NSTimer*)t{
NSUInteger *tickNumber = (NSUInteger)t;
NSMutableArray *subArray = [dataPoints objectAtIndex:tickNumber];
//etc...
}
我收到警告:
"Incompatible integer to point conversion initializing NSUInteger (unsigned long)
如何使用 NSTimer 间隔从子数组索引中提取数据?
编辑: 我误解了 NSTimer 的属性是如何工作的。我认为我可以更轻松地访问计时器的当前间隔。相反,我现在只在循环中使用我自己的内部整数。
NSUInteger frameTicker =0;
-(void)someMethod: (NSTimer*)t{
frameTicker++;
NSMutableArray *subArray = [dataPoints objectAtIndex:frameTicker];
}
无需转换。
对于第一个警告,我们需要知道 "t" 是什么类型,这样我们才能知道如何将其转换为 NSUInteger,转换不起作用。
为了避免出现第二条消息,您应该重命名您的 tickNUmber 或者您可以使用以相同名称声明的 属性 而不是局部变量。
根据@EmilioPelaez,我没有直接使用 NSTimer:
NSUInteger frameTicker =0;
-(void)someMethod: (NSTimer*)t{
frameTicker++;
NSMutableArray *subArray = [dataPoints objectAtIndex:frameTicker];
}
我会称赞他,但他没有post回答。