ボタンの文字列値に基づいて多くの切り替えステートメントがあります(たとえば、矢印画像をUIButtonの座標に移動します)。私のコードには多くの繰り返しがあることに気づきました。私が考えた1つのことは、たとえば実際の「スイッチ」関数を使用することでしたが、残念ながら、文字列ではなく変数タイプの切り替えとしてintのみを使用します。
これが私が改善するために探しているコード例です:
-(void)initAperture{
//Set
if ([[[self dataObject] logAperture] isEqualToString:@"dark"]) {
[self moveImageView:selectorAperture
toUIButton:buttonApertureDark
animated:NO];
}
if ([[[self dataObject] logAperture] isEqualToString:@"cloudy"]) {
[self moveImageView:selectorAperture
toUIButton:buttonApertureCloudy
animated:NO];
}
if ([[[self dataObject] logAperture] isEqualToString:@"sunny"]) {
[self moveImageView:selectorAperture
toUIButton:buttonApertureSunny
animated:NO];
}
if ([[[self dataObject] logAperture] isEqualToString:@"pinhole"]) {
[self moveImageView:selectorAperture
toUIButton:buttonAperturePinhole
animated:NO];
}
}
改善のアドバイスやベストプラクティスをいただければ幸いです。