-4

下の画像でわかるように、私はユーザーに日常生活で行う活動を選択するように求めています.

この情報を文字列として取得し、データベースに送信したいと思います。

私は特定するシナリオを考え出しました:

ウォーキング:1、サイクリング:2、ハイキング:3、サッカー:4、その他:5、なし:0

説明の左側に示されている各画像は、iBOutlet を持つボタン (IBAction) です。

たとえば、ユーザーがウォーキング、ハイキング、サッカーのみを選択した場合、文字列は「134」になります

どうすれば達成できますか?

- (IBAction)walkingBtnAction:(id)sender {
    counter1++;
    if(counter1%2==0)
    {
        [walkingBtnOutlet setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
    }

    if(counter1%2==1)
    {
        [walkingBtnOutlet setBackgroundImage:buttonImage2 forState:UIControlStateNormal];
    }

    //[self.view addSubview:myButton];
}

- (IBAction)bikingBtnAction:(id)sender {
    counter2++;
    if(counter2%2==0)
    {
        [bikingBtnOutlet setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
    }

    if(counter2%2==1)
    {

        [bikingBtnOutlet setBackgroundImage:buttonImage2 forState:UIControlStateNormal];
    }

}

- (IBAction)hikingBtnAction:(id)sender {
    counter3++;

    if(counter3%2==0)
    {
        [hikingBtnOutlet setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
    }

    if(counter3%2==1)
    {
        [hikingBtnOutlet setBackgroundImage:buttonImage2 forState:UIControlStateNormal];
    }
}

- (IBAction)soccerBtnAction:(id)sender {
    counter4++;

    if(counter4%2==0)
    {
        [soccerBtnOutlet setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
    }
    if(counter4%2==1)
    {
        [soccerBtnOutlet setBackgroundImage:buttonImage2 forState:UIControlStateNormal];
    }
}

- (IBAction)othersBtnAction:(id)sender {
    counter5++;
    if(counter5%2==0)
    {
        [othersBtnOutlet setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
    }
    if(counter5%2==1)
    {
        [othersBtnOutlet setBackgroundImage:buttonImage2 forState:UIControlStateNormal];
    }

}

- (IBAction)noneBtnActions:(id)sender {
    counter6++;
    if(counter6%2==0)
    {
        [noneBtnOutlet setBackgroundImage:buttonImage1 forState:UIControlStateNormal];
    }
    if(counter6%2==1)
    {
        [noneBtnOutlet setBackgroundImage:buttonImage2 forState:UIControlStateNormal];
    }

}

ここに画像の説明を入力

4

2 に答える 2

2
// maybe declare this as a class variable in the .h file
NSString finalString = @"";

- (IBAction)walkingBtnAction:(id)sender {
    if(walkingClicked)
        finalString = [finalString stringByAppendingString:@"1"];
    else
        finalString = [finalString stringByReplacingOccurancesOfString:@"1" withString:@""];
}

そして今、あなたはあなたのすべての行動のためにこれをしなければなりません

PS: コードはテストされていません

于 2013-07-15T22:36:33.367 に答える
1

そのページでchoicesと呼ばれるiVarを作成しないのはなぜですか(たとえば)、これを行います

[choices stringByAppendingString:@"numberyouwant"];
于 2013-07-15T22:36:34.770 に答える