我有一个自定义的UISider控件,当我滑动控件时,我将requestThumbnailImagesAtTimes发送到MPMoviePlayerController。
- (void)sliderPopoverView:(UISlider*)slider
{
self.currentSliderValue = slider.value;
[self.moviePlayer requestThumbnailImagesAtTimes:[NSArray arrayWithObject:[NSNumber numberWithDouble:self.currentSliderValue]]
timeOption:MPMovieTimeOptionNearestKeyFrame];
}
- (void)requestFinishThumbnail:(NSNotification*)notification
{
UIImage *thumbnailImage = [notification.userInfo objectForKey:MPMoviePlayerThumbnailImageKey];
if (thumbnailImage) {
_bottomView.sliderPopover.popover.thumbnailView.image = thumbnailImage;
}
}
然后我可以收到很多关于节目的图片。但主线程受阻。滑动自定义控件很难。花了很多时间。
答案 0 :(得分:0)
原因可能是方法
- (void)sliderPopoverView:(UISlider*)slider
每次滑块移动一点时都会调用。这将导致您的MPMoviePlayerController不断生成缩略图。您可能应该尝试减少调用生成缩略图的方法的次数。