如何检查我的UILabel值是否高于0?

时间:2011-12-02 17:59:08

标签: iphone objective-c ios xcode uilabel

如何检查我的UILabel值是否高于0?我只需要做一个if语句。我这样做是因为我需要找出数字是1,2,3等等,然后如果是,我需要调用某个动作。

我尝试过以下代码,但它不起作用,而是显示错误:

if([[label text] intValue]> 0){

}

编辑:我发现了另一段代码,这些代码无法发挥作用。上面的代码现在完全有效。

3 个答案:

答案 0 :(得分:5)

if ([[myLabel text] intValue] > 0) ...

答案 1 :(得分:1)

如果你确定UILabel的文本值是数字,你可以这样做:

- (BOOL)valueGreaterThanZero:(UILabel *)label {
    NSString *text = [label text];
    int value;
    [[NSScanner scannerWithString:text] scanInt:&value];
    return (value > 0);
}

请注意,这将使用非数字值崩溃。

更好的版本,错误处理...这假设你想要非数字的假值:

- (BOOL)valueGreaterThanZero:(UILabel *)label {
    NSString *text = [label text];
    int value;
    BOOL gotNumber = [[NSScanner scannerWithString:text] scanInt:&value];
    return (gotNumber && value > 0);
}

然后,根据OP,在if语句中使用

if ([self valueGreaterThanZero:labelToCheck]) ...

答案 2 :(得分:1)

if ([myLabel.text intValue] > 0) {
    // do staf
}