0

2つのセグメントボタン(1と2)があります。1つは選択したセグメント用、もう1つは選択していないセグメント用の背景画像を追加したいのですが、どうすればよいですか?

これが私がこれまでに持っているものです、ここで背景画像を設定する必要がありますか?:

- (void)selectWithSegment:(UIButton *)sender
{
    for (UIButton *button in self.segments) {
        if (button == sender) {
            if (self.staySelected) {
                button.backgroundColor = [UIColor colorWithRed:17.0/255.0 green:17.0/255.0 blue:17.0/255.0 alpha:1.0];
                [button setBackgroundImage:nil forState:UIControlStateNormal];
            }
            if ([self.delegate respondsToSelector:@selector(segmentControl:didSelectSegment:)]) {
                [self.delegate segmentControl:self didSelectSegment:sender];
            }
        } else {
            [self decorateButton:button];
        }
    }
}

選択されたセグメントと選択されていないセグメントのimage1.pngとimage2.pngを設定するにはどうすればよいですか?誰かが実装を手伝ってくれますか?

ここに画像の説明を入力してください

4

1 に答える 1

0

この状況を処理する他の方法はわかりませんが、これが役立つと思います:

UISegmentControl の IBOutlet を作成した後、以下のアクションで IBAction を valueChange イベントに設定します。

-(IBAction)selectedSegment:(id)sender{
    int totalNumberOfSegment = 5;
    UISegmentedControl *tmpSig = (UISegmentedControl *)sender;
    NSLog(@"Inside sender method");

    for (int i = 0; i < totalNumberOfSegment; i++) {
        [tmpSig setImage:[UIImage imageNamed:@"unselect.png"] forSegmentAtIndex:i];
    }

    [tmpSig setImage:[UIImage imageNamed:@"select.png"] forSegmentAtIndex:tmpSig.selectedSegmentIndex];

}
于 2013-03-04T19:09:03.840 に答える