Я добавил несколько индивидуальных представлений на свой PIP. Эти элементы управления исчезли после открытия камеры в среде XCODE16 и iOS -18, и было обнаружено, что эти пользовательские представления не были удалены и, казалось, были затенены. Они отображались обычно в среде XCODE15.4.func setViews(pipController: AVPictureInPictureController) {
if contentView == nil {
let controller = pipController.value(forKey: "pictureInPictureViewController") as! UIViewController
guard let window = controller.view.window else {
LNLog.info("not find pip's window:\(retryCount)")
guard retryCount > 0 else { return }
retryCount -= 1
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) { [weak self] in
self?.setViews(pipController: pipController)
}
return
}
guard let model = model else {return}
contentView = PipContentview(model: model)
contentView?.contentChangeBlock = {[weak self] value in
self?.contentChangeBlock?(value)
self?.model = value
}
contentView?.speechRecognizerFailHandler = speechRecognizerFailHandler
window.addSubview(contentView!)
window.addObserver(self, forKeyPath: "frame", options: .new, context: nil)
pipWindow = window
_refreshContentFromOrientation()
}
resizeUI {
if self.isIOS16() || self.judgeTextAndAimode() {
self.contentView?.isPlaying = false
self.contentView?._startPrompt()
}
self.contentView?.resizeUI {}
}
}
< /code>
audio setup < /p>
static func setPlayBackCategory() {
let audioSession = AVAudioSession.sharedInstance()
let category = AVAudioSession.Category.playback
let options: AVAudioSession.CategoryOptions = [.mixWithOthers]
if audioSession.category == category, audioSession.categoryOptions.contains(options) {
return
}
do {
try audioSession.setCategory(category, options: options)
try audioSession.setActive(true)
} catch {
LNLog.info("playback error: \(error)")
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... -turned-on
PIP пользовательский просмотр в XCODE16 IOS18 не отображается при включении камеры ⇐ IOS
Программируем под IOS
1752144621
Anonymous
Я добавил несколько индивидуальных представлений на свой PIP. Эти элементы управления исчезли после открытия камеры в среде XCODE16 и iOS -18, и было обнаружено, что эти пользовательские представления не были удалены и, казалось, были затенены. Они отображались обычно в среде XCODE15.4.func setViews(pipController: AVPictureInPictureController) {
if contentView == nil {
let controller = pipController.value(forKey: "pictureInPictureViewController") as! UIViewController
guard let window = controller.view.window else {
LNLog.info("not find pip's window:\(retryCount)")
guard retryCount > 0 else { return }
retryCount -= 1
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) { [weak self] in
self?.setViews(pipController: pipController)
}
return
}
guard let model = model else {return}
contentView = PipContentview(model: model)
contentView?.contentChangeBlock = {[weak self] value in
self?.contentChangeBlock?(value)
self?.model = value
}
contentView?.speechRecognizerFailHandler = speechRecognizerFailHandler
window.addSubview(contentView!)
window.addObserver(self, forKeyPath: "frame", options: .new, context: nil)
pipWindow = window
_refreshContentFromOrientation()
}
resizeUI {
if self.isIOS16() || self.judgeTextAndAimode() {
self.contentView?.isPlaying = false
self.contentView?._startPrompt()
}
self.contentView?.resizeUI {}
}
}
< /code>
audio setup < /p>
static func setPlayBackCategory() {
let audioSession = AVAudioSession.sharedInstance()
let category = AVAudioSession.Category.playback
let options: AVAudioSession.CategoryOptions = [.mixWithOthers]
if audioSession.category == category, audioSession.categoryOptions.contains(options) {
return
}
do {
try audioSession.setCategory(category, options: options)
try audioSession.setActive(true)
} catch {
LNLog.info("playback error: \(error)")
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79606324/pip-custom-view-in-xcode16-ios18-does-not-display-when-the-camera-is-turned-on[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия