From 7fe780a549f71bb95e4df0a52a1e701c5f8169dd Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Wed, 15 May 2024 11:52:54 +0300 Subject: Fix both layouts --- JuickNext/Helpers/View+ScreenTitle.swift | 39 ++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 JuickNext/Helpers/View+ScreenTitle.swift (limited to 'JuickNext/Helpers') diff --git a/JuickNext/Helpers/View+ScreenTitle.swift b/JuickNext/Helpers/View+ScreenTitle.swift new file mode 100644 index 0000000..192b3bc --- /dev/null +++ b/JuickNext/Helpers/View+ScreenTitle.swift @@ -0,0 +1,39 @@ +// +// View+ScreenTitle.swift +// JuickNext +// +// Created by Vitaly Takmazov on 15.05.2024. +// Copyright © 2024 com.juick. All rights reserved. +// + +import Foundation +import SwiftUI + +public struct ScreenTitleModifier: ViewModifier { + + let screenTitle: String + + init(title: String) { + self.screenTitle = title + } + + + public func body(content: Content) -> some View { + if #available(iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0, *) { + content.navigationTitle(self.screenTitle) + } else { +#if os(iOS) + content.navigationBarTitle(self.screenTitle) +#else + content +#endif + } + } +} + +extension View { + @ViewBuilder + func screenTitle(title: String) -> some View { + modifier(ScreenTitleModifier(title: title)) + } +} -- cgit v1.2.3