ここでは UISegmentationControl を使用しました。セグメンテーション用の画像を設定する必要があります。ios7 では画像は正しい位置に配置されますが、ios6 以前のバージョンでは画像のサイズが正しくありません。添付の画像を参照してください。
IOS6 では、画像が誤って表示された画像になっています
IOS7では、画像は正しい方法です
画像を設定するために使用したコード
UIImage *separator;
UIImage *onstate;
UIImage *offstate;
UIImage *unselected_right_state;
UIImage *unselected_left_state;
if ([UIImage instancesRespondToSelector:@selector(imageWithRenderingMode:)]) {
separator = [[UIImage imageNamed:@"gseprator.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
onstate = [[UIImage imageNamed:@"on.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
offstate = [[UIImage imageNamed:@"off.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
unselected_right_state = [[UIImage imageNamed:@"gon2.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
unselected_left_state = [[UIImage imageNamed:@"goff1.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
}
else {
separator = [UIImage imageNamed:@"gseprator.png"];
onstate = [UIImage imageNamed:@"on.png"];
offstate = [UIImage imageNamed:@"off.png"];
unselected_right_state = [UIImage imageNamed:@"gon2.png"];
unselected_left_state = [UIImage imageNamed:@"goff1.png"];
}
if (true) {
[[cell onoffSegment] setImage:onstate forSegmentAtIndex:0];
[[cell onoffSegment] setImage:unselected_right_state forSegmentAtIndex:1];
}else{
[[cell onoffSegment] setImage:unselected_left_state forSegmentAtIndex:0];
[[cell onoffSegment] setImage:offstate forSegmentAtIndex:1];
}