【问题标题】:UISlider variable maximum valueUISlider 变量最大值
【发布时间】:2011-09-15 04:57:12
【问题描述】:

我的 iPhone 应用程序播放来自 Internet 的流式音频,我有一个 UISlider 来来回移动已下载的文件。

此 UISlider 具有透明轨道,位于 UIProgressView 之上。

UIProgressView 向用户显示流式音频下载进度。

一切正常,但我不知道如何限制清理功能,而不是超出已下载的音频文件,由这个 UIProgressView 表示。

欢迎提出任何建议。

【问题讨论】:

    标签: iphone objective-c cocoa-touch uislider uiprogressview


    【解决方案1】:

    您可以检查更改的值是否大于进度,然后将其设置为进度。假设你在这个方法中处理UISliderUIControlEventValueChanged事件,

    - (void)valueChanged:(UISlider *)sender {
        if ( self.slider.value > self.progressView.progress ) {
            [self.slider setValue:self.progressView.progress animated:YES];
        }
    }
    

    或根据进度更改框架。

    【讨论】:

    • 非常感谢!你为我节省了很多时间,让我免于尝试自己解决这个问题。另一件事,也许你可以帮助我。有时当我尝试读取最新的音频数据包时,我得到 -1 值,这使滑块变为零值,停止正在播放的音频。如何始终备份最新的数据包(在 C 或 Objective-C 中)在丢失时变为 -1 之前?
    • 取决于数据类型。我将声明该数据类型的实例变量,并为我收到的每个有效值更改它。这样当我想要它时它就会有最新的数据包,就像我收到-1时一样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-09
    • 1970-01-01
    • 2014-06-12
    • 2010-10-15
    相关资源
    最近更新 更多