Полноэкранный проигрыватель, открытый через HTML, не прекращает скачивание, даже если он сделан

Я добавил несколько видеороликов в ту же ячейку, используя tableview. Каждая ячейка имеет свой собственный веб-просмотр. Видео воспроизводится в веб-просмотре, используя следующий код

NSString *embedHTML = @"<html><head>\<style type=\"text/css\">\body {\background-color:transparent;\color: white;\}\</style>\<script>\function load({document.getElementById(\"yt\").play();}\</script>\</head><body onload=\"load()\"style=\"margin:0\">\<video id=\"yt\" src=\"%@\" \width=\"%0.0f\" height=\"%0.0f\" autoplay controls></video>\</body></html>"; NSString *html = [NSString stringWithFormat:embedHTML, urlString, videoView.frame.size.width, videoView.frame.size.height,thumbnailImageLink]; [videoView loadHTMLString:html baseURL:nil]; 

Он работает абсолютно нормально. Он отображает миниатюру с кнопкой воспроизведения на нем. Нажатие на кнопку «Воспроизведение» открывает видеопроигрыватель в полноэкранном режиме со всеми элементами управления.

Теперь главная проблема: когда я нажимаю кнопку «Готово», полноэкранный режим исчезает. Ну, это как и ожидалось

Но загрузка видео продолжается. Совсем нет

Итак, я открыл Видео1, затем нажимаю кнопку «Готово», затем открываю видео2. Но поскольку видео1 все еще загружается, видео2 становится меньше скорости интернета.

Таким образом, вопрос в том, есть ли способ принудительно прекратить скачивание, когда нажата кнопка «Готово» в полноэкранном режиме?

Примечание. Существует список видеороликов, т. Е. N videos = n webviews. Так что невозможно определить, какой веб-просмотр воспроизводит видео. Если я могу получить доступ к веб-просмотру, я бы перезагрузил его. Чтобы загрузка могла быть остановлена, и она получает свежий контент, который не запускается, пока я не коснусь значка.

Чтобы быть более конкретным, я могу получить доступ, когда воспроизводится видео, и когда кнопка «Готово» нажата, используя

 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoPlayStarted:) name:@"UIMoviePlayerControllerDidEnterFullscreenNotification" object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoPlayFinished:) name:@"UIMoviePlayerControllerDidExitFullscreenNotification" object:nil]; 

И можно получить доступ через

 BOOL isVideoInFullScreenMode; -(void)videoPlayStarted:(NSNotification *)notification{ //Your stuff here isVideoInFullScreenMode = YES; } -(void)videoPlayFinished:(NSNotification *)notification{ //Your stuffs here isVideoInFullScreenMode = NO; } 

One Solution collect form web for “Полноэкранный проигрыватель, открытый через HTML, не прекращает скачивание, даже если он сделан”

Вы не можете контролировать, что происходит в веб-просмотре. Я думаю, что это проблема дизайна. Веб-просмотры не являются волшебным лекарством для всех. Вам нужно написать код самостоятельно, если вы хотите его контролировать. Я также надеюсь, что вы прослушали это с помощью apple (http://bugreporter.apple.com).

  • Добавить «Открыть в iBooks» в UIWebView
  • Рендеринг svg в uiwebview вызывает давление в памяти (и крах приложения)
  • UIWebView - ограничение ширины содержимого
  • UIWebView загружает изображение с помощью обратного вызова
  • Отображение страницы UIWebView для PDF-файлов на iOS
  • Автоматическая анимация с iBooks Author
  • Инвертировать цвета в UIWebView или UITextView
  • iOS UIWebView падает при попытке запросить URL-адрес
  • Свойства свойств UIWebViewPageToFit = YES не работают корректно на больших изображениях
  • Почему очистка NSUserDefaults вызывает EXC_CRASH позже при создании UIWebView?
  • Как отобразить изображение .svg с помощью swift
  • Interesting Posts

    Как работать с большими файлами в ios?

    Generic Class не передает вызовы делегатов конкретному подклассу

    Предотвращение прокрутки UIWebView при появлении клавиатуры

    UISearchDisplayController не отображает результаты в searchResultsTableView

    IOS, как установить формат даты

    Ошибка BOOL от NSMethodSignature

    Почему Google делает объявление в формате @class в файле реализации (.m)?

    Есть ли способ совместного использования и синхронизации папки приложений для iOS-симуляторов

    Передача данных через ViewControllers – Сделать страницу настроек

    UIImageView setImage или setBackgroundColor, который лучше в iOS

    NSDateformatter setDateFormat согласно currentLocale

    Увеличьте высоту прыжка при более длительном касании до максимальной высоты

    Можете ли вы предварительно подготовить шейдер к фоновому потоку со своим контекстом?

    Как добавить UILongPressGestureRecognizer в UITextField?

    WKInterfaceMap отключить триггер на родной карте Apple Watch

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.