0

わかりましたので、私は目標 c を学習するのに 1 日かかるようです。これは非常に基本的な質問であることは承知していますが、学習に大いに役立ちます。コードは単なる基本的なカウンターですが、カウンターが特定の数に達すると別のメッセージが表示されるように、何かを追加したいと考えています。色々と試してみましたがだめでした。前もって感謝します。

#import "MainView.h"

@implementation MainView

int count = 0;

-(void)awakeFromNib {

    counter.text = @"count";

}

- (IBAction)addUnit {

    if(count >= 999) return;

    NSString *numValue = [[NSString alloc] initWithFormat:@"%d", count++];
    counter.text = numValue;
    [numValue release];
}

- (IBAction)subtractUnit {

    if(count <= -999) return;

    NSString *numValue = [[NSString alloc] initWithFormat:@"%d", count--];
    counter.text = numValue;
    [numValue release]; {

    }


}
4

2 に答える 2

1

まず第一に、カウントをグローバル変数として配置する代わりに、代わりにインターフェイスに配置する方が適切です。そして、あなたの質問に関しては、コードを次のように変更する必要があります。

- (IBAction)addUnit {

    //if(count >= 999) return;  Delete this line, there is absolutely no point for this line this line to exist. Basically, if the count value is above 999, it does nothing.

    NSString *numValue;
    if (count>=999)
    {
        //Your other string
    }
    else
    {
        numValue = [[NSString alloc] initWithFormat:@"%d", count++];   
    }
    counter.text = numValue;
    [numValue release];//Are you using Xcode 4.2 in ARC?  If you are you can delete this line
}

次に、他の方法を同様のものに変更できます。

于 2012-06-24T01:50:56.183 に答える
0

これはどう?

#import "MainView.h"

@implementation MainView

int count = 0;
int CERTAIN_NUMBER = 99;


-(void)awakeFromNib {

    counter.text = @"count";

}

- (IBAction)addUnit {

    if(count >= 999) return;

    NSString *numValue = [[NSString alloc] initWithFormat:@"%d", count++];
    if(count == CERTAIN_NUMBER) {
        counter.text = numValue;
    }
    else {
        counter.text = @"A different message"
    }
    [numValue release];
}

- (IBAction)subtractUnit {

    if(count <= -999) return;

    NSString *numValue = [[NSString alloc] initWithFormat:@"%d", count--];
    if(count == CERTAIN_NUMBER) {
        counter.text = numValue;
    }
    else {
        counter.text = @"A different message"
    }
    [numValue release]; {

    }


}
于 2012-06-24T01:32:10.247 に答える