1

我已经将我的 UISlider 与两种方法联系起来——Touch Up Inside 和 Value Changed。第一个在拖动完成后更新,第二个在拖动过程中更新。当我用滑块在屏幕上拖动“长”距离时,一切都很好。当我一步一步拖动时,Value Changed 工作正常,但 Touch Up Inside 并没有……有人经历过同样的事情吗?

4

1 回答 1

2

问题出在手势识别器上。当我实现了在滑块上识别“点击”的方法以使滑块快速移动到该位置而无需将其碎片化到那里时,我忘记使用 if-else 语句将其与内部修饰分开。

UISlider* s = (UISlider*)gestureRecognizer.view;
if (s.highlighted) {
    switch (s.tag) {
        case 1:
            [_cpuStepper setValue:[s value]];
            break;
        case 2:
            [_ramStepper setValue:[s value]];
            break;
        case 3:
            [_hddStepper setValue:[s value]];
            break;
        default:
            break;
    }
    [self updatePrice];
    return; // on thumb
}

现在都在工作。

于 2012-07-09T13:24:45.157 回答