菜鸟教程小白 发表于 2022-12-13 13:51:04

iphone - 使用 UISlider 移动标签


                                            <p><p>我有一个要求,我必须使用 UISlider 移动标签上的值。我试过这段代码</p>

<pre><code>;

- (void)dragMoving:(UIControl *)c withEvent:ev {
    UITouch *touch = [ anyObject];
    CGPoint touchPoint = ;
   sliderLabe.frame = CGRectMake(touchPoint.x,250, 270, 40);
}
</code></pre>

<p>sliderLabel 就在 slider 下方,但是当我拖得更快时它会给我带来奇怪的结果,但如果我慢慢移动 muslider ,它会正常工作。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>当 slider 移动时,它也在计算它的新值并调用 <code>valueChanged</code>。这可能会干扰您额外的 <code>UIControlEventTouchDragInside</code> 处理程序。</p>

<p>如果 <code>slider.continuous</code> 设置为 <code>YES</code>,您可以尝试将 label-moving-code 移动到 <code>valueChanged</code> 处理程序中。</p>

<p>当然触摸位置在这个方法中是未知的,所以需要从 slider 的其他属性中计算出来:<code>frame.origin.x</code>,<code>frame.size.width</code>, <code>minimumValue</code>、<code>maximumValue</code> 和 <code>value</code></p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 使用 UISlider 移动标签,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/10720249/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/10720249/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 使用 UISlider 移动标签