そこで、カスタム UISegmentControl を作成しましたが、見栄えは良いのですが、最初と最後のボタンのラベルが中央に配置されていません。これを実装ファイルに入れて修正するように言われましたが、何もしません。
[self setContentPositionAdjustment:UIOffsetMake(35 / 2, 0)
forSegmentType:UISegmentedControlSegmentLeft
barMetrics:UIBarMetricsDefault];
[self setContentPositionAdjustment:UIOffsetMake(-35 / 2, 0)
forSegmentType:UISegmentedControlSegmentRight
barMetrics:UIBarMetricsDefault];
35px は私の仕切り画像の幅です。私も試しました:
[self setContentPositionAdjustment:UIOffsetMake([UIImage imageNamed:@"mySegCtrl-divider-none-selected.png"].size.width / 2, 0)
forSegmentType:UISegmentedControlSegmentLeft
barMetrics:UIBarMetricsDefault];
[self setContentPositionAdjustment:UIOffsetMake(- [UIImage imageNamed:@"mySegCtrl-divider-none-selected.png"].size.width / 2, 0)
forSegmentType:UISegmentedControlSegmentRight
barMetrics:UIBarMetricsDefault];
参考として、ここに写真があります: