1
我的iPhone應用程序從互聯網播放流式音頻,我有一個UISlider來擦洗已經下載的文件。UISlider變量最大值
此UISlider具有透明軌道,並且位於UIProgressView之上。
UIProgressView向用戶顯示流式音頻下載進度。
一切工作正常,但我無法弄清楚如何限制擦除功能不超出已經下載的音頻文件,由此UIProgressView代表。
歡迎任何建議。
我的iPhone應用程序從互聯網播放流式音頻,我有一個UISlider來擦洗已經下載的文件。UISlider變量最大值
此UISlider具有透明軌道,並且位於UIProgressView之上。
UIProgressView向用戶顯示流式音頻下載進度。
一切工作正常,但我無法弄清楚如何限制擦除功能不超出已經下載的音頻文件,由此UIProgressView代表。
歡迎任何建議。
您可以檢查改變的值是否大於進度然後將其設置爲進度。假設你正在處理UISlider
的UIControlEventValueChanged
事件在此方法中,
- (void)valueChanged:(UISlider *)sender {
if (self.slider.value > self.progressView.progress) {
[self.slider setValue:self.progressView.progress animated:YES];
}
}
或更改基於進度框。
非常感謝!你爲我節省了很多時間,並且避免了我從沮喪中解脫出來。另一件事,也許你可以幫助我。有時當我嘗試讀取最新的音頻數據包時,我會得到-1值,這會使滑塊變爲零值,從而停止正在播放的音頻。我怎麼總是備份最新的數據包(在C或Objective-C中),然後在它丟失時變爲-1? – Winston 2011-06-15 13:57:15
取決於數據類型。我將聲明該數據類型的一個實例變量,並將其更改爲我收到的每個有效值。因此,當我需要它時,它會得到最新的數據包,因爲在這種情況下,當我收到-1時。 – 2011-06-16 19:36:47