Заблокирование вращения на портрет на Swiftui без использования AppDelegate или ScenedElegateIOS

Программируем под IOS
Ответить
Anonymous
 Заблокирование вращения на портрет на Swiftui без использования AppDelegate или ScenedElegate

Сообщение Anonymous »

Я пытаюсь заблокировать ротацию моего приложения, используя кучу методов, которые Apple теперь снизилась на протяжении многих лет, и у меня нет Ориентация?. Когда я пытаюсь внедрить это решение в свою программу, Xcode возвращает предупреждающую ошибку в клиенте uikit: Настройка uidevice.orientation не поддерживается. Пожалуйста, используйте uiwindowscene.requestgeometryupdate (_ :)
Вот мой текущий код
plought-override ».import SwiftUI

@main
struct testApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate

var body: some Scene {
WindowGroup {
//Main code here
}

}

}
< /code>
mainview.swift
import SwiftUI

struct ContentView: View {

var body: some View {
ZStack {
// rest of code is here
}
}.onAppear {
UIDevice.current.setValue(UIInterfaceOrientation.portrait.rawValue, forKey: "orientation") // Forcing the rotation to portrait
AppDelegate.orientationLock = .portrait // And making sure it stays that way

}

}

class AppDelegate: NSObject, UIApplicationDelegate {

static var orientationLock = UIInterfaceOrientationMask.all

func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
return AppDelegate.orientationLock
}
}


Подробнее здесь: https://stackoverflow.com/questions/788 ... -or-scened
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»