我的代码有效,但我想确保我正确地做得很干净。
我在屏幕上显示了同一组视图的四个版本。每个集合将用于控制四种不同声音的音量和速率。这些集合与IBOutletCollection链接到4个不同的NSArrays(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]);
}
我做对了还是有更好的方法来实现这个目标?
答案 0 :(得分:0)
您可以使用tag
属性在控件上设置数字索引,然后在事件回调中使用sender.tag
。