4

動作するコードはありますが、適切かつクリーンに実行していることを確認したいと考えています。

画面に表示されたビューの同じコレクションの 4 つのバージョンがあります。4 つの異なるサウンドのボリュームとレートを制御するために使用される各コレクション。コレクションは IBOutletCollection で 4 つの異なる NSArray (soundView0、soundView1、soundView2、soundView3) にリンクされています。

次のコードを使用して、どのボリューム スライダーが調整されているかを判断しました。

-(IBAction)whichVolume:(UISlider *)sender
{
    if ([soundView0 containsObject:sender]) {
        soundIndex = 0;
    }
    else if (([soundView1 containsObject:sender]))
    {
        soundIndex = 1;
    }
else if ([soundView2 containsObject:sender])
{
    soundIndex = 2;
}
    else if ([soundView3 containsObject:sender])
{
    soundIndex = 3;
}
    //send a message to set volume of sound at index soundIndex
    NSLog(@"The soundIndex is %d", soundIndex);
    NSLog(@"The volume is %f", [sender value]);
}

私はこれを正しく理解しましたか、それともこれを達成するためのより良い方法はありますか?

4

1 に答える 1

0

プロパティを使用tagしてコントロールに数値インデックスを設定しsender.tag、イベント コールバックで使用するだけです。

于 2013-04-12T11:31:42.327 に答える