UILabel int count ++不起作用

时间:2015-03-06 03:25:24

标签: ios numbers int

我试图无限期地计算UILabel上的一些点击数,每次点击标签时都会显示不同的字符串。但是,它始终使用+++= 1

停止2次点击
 -(void)cycleLabelString {
    int taps;
    taps += 1;
    NSLog(@"taps = %d", taps);

    if (taps == 1) {
        self.randomLabel.text = [NSString stringWithFormat:@"$%.2f", pagesCount * 0.69];
    } else if (taps == 2) {
        self.randomLabel.text = [NSString stringWithFormat:@"%d", pagesCount];
    } else if (taps >= 3) {
        NSLog(@" >= 3");
    }
}

2 个答案:

答案 0 :(得分:1)

int taps;

每次初始化一个新的taps,默认情况下初始化为零。你可能想要它在一个属性中。在.m文件的顶部创建一个私有类扩展,如下所示:

@interface YourClassNameHere ()

@property (nonatomic) int taps;

@end

然后使用它:

-(void)cycleLabelString {
    self.taps += 1;
    NSLog(@"taps = %d", self.taps);

    if (self.taps == 1) {
        self.randomLabel.text = [NSString stringWithFormat:@"$%.2f", pagesCount * 0.69];
    } else if (self.taps == 2) {
        self.randomLabel.text = [NSString stringWithFormat:@"%d", pagesCount];
    } else if (self.taps >= 3) {
        NSLog(@" >= 3");
    }
}

答案 1 :(得分:0)

每次点击标签时都会调用此函数吗?如果是这样,您将需要将点击定义为全局变量,因为每次点击标签时它都会被重置。尝试类似的事情:

int taps;

-(void)cycleLabelString {
...