Ich muss ein paar Text- und Bildschaltflächen in der Tastatursymbolleiste anordnen und möchte Abstandshalter einfügen, um sie gleichmäßig anzuordnen. Dies funktionierte unter iOS 18. Unter iOS 26 ist jedoch alles unübersichtlich. Siehe Bild:
Hier ist eine minimale Reproduktion, mit der Sie herumspielen können:
import SwiftUI
struct ContentView: View {
@State var text: String = ""
var body: some View {
NavigationStack {
List {
TextField("Click Me", text: $text)
Text("Hello, world!").font(Font.system(size: 32))
Text("Hello, world!").font(Font.system(size: 32))
Text("Hello, world!").font(Font.system(size: 32))
Text("Hello, world!").font(Font.system(size: 32))
Text("Hello, world!").font(Font.system(size: 32))
}
.toolbar {
ToolbarItemGroup(placement: .topBarLeading) {
Button {
} label: {
Text("Toggle")
}
}
}
.toolbar {
ToolbarItemGroup(placement: .keyboard) {
keyboardButtons
}
}
}
.navigationTitle("Hello")
}
@ViewBuilder
private var keyboardButtons: some View {
HStack {
SUITextButton("Button") {}
Spacer()
SUIImageButton(
image: UIImage(
systemName: "chevron.left",
withConfiguration: UIImage.SymbolConfiguration(pointSize: 32, weight: .regular, scale: .small)
)!,
enabled: true
) {}
Spacer()
SUIImageButton(
image: UIImage(
systemName: "chevron.right",
withConfiguration: UIImage.SymbolConfiguration(pointSize: 32, weight: .regular, scale: .small)
)!,
enabled: true
) {}
Spacer()
SUITextButton("Button") {}
}
}
}
#Preview {
ContentView()
}
public struct SUITextButton: View {
private let title: String
private let action: () -> Void
private let enabled: Bool
public init(_ title: String, enabled: Bool = true, action: @escaping () -> Void) {
self.title = title
self.enabled = enabled
self.action = action
}
public var body: some View {
Button(title, action: action)
}
}
public struct SUIImageButton: View {
public init(image: UIImage, enabled: Bool, action: @escaping () -> Void) {
self.image = image
self.enabled = enabled
self.action = action
}
private let image: UIImage
private let enabled: Bool
private let action: () -> Void
public var body: some View {
Button(action: action) {
SUIImage(
uiImage: image,
// Since it's inside of a button, it will be blue when enabled, and gray when disabled.
rendering: .systemTint)
}
}
}
public struct SUIImage: View {
public enum Rendering {
case systemTint
case customColor(color: UIColor)
case original
}
private let uiImage: UIImage
private let rendering: Rendering
public init(uiImage: UIImage, rendering: Rendering) {
self.uiImage = uiImage
self.rendering = rendering
}
public var body: some View {
let width: CGFloat = 18.0 + (2.0 / 3.0)
let height: CGFloat = 26.0 + (2.0 / 3.0)
Image(uiImage: uiImage)
.renderingMode(.template)
}
}
Das Setzen des UIDesignRequriesCompatibility-Flags hat funktioniert, aber ich benötige einen Glaseffekt für andere Teile meiner App (und ich denke, dass es mit dem Glaseffekt über der Tastatur besser aussieht). Das ist also keine Option.
Ich muss ein paar Text- und Bildschaltflächen in der Tastatursymbolleiste anordnen und möchte Abstandshalter einfügen, um sie gleichmäßig anzuordnen. Dies funktionierte unter iOS 18. Unter iOS 26 ist jedoch alles unübersichtlich. Siehe Bild: [img]https://i.sstatic.net/itBFvKqj.png[/img]
Hier ist eine minimale Reproduktion, mit der Sie herumspielen können: [code] import SwiftUI
struct ContentView: View { @State var text: String = "" var body: some View { NavigationStack { List { TextField("Click Me", text: $text)
private let image: UIImage private let enabled: Bool private let action: () -> Void
public var body: some View { Button(action: action) { SUIImage( uiImage: image, // Since it's inside of a button, it will be blue when enabled, and gray when disabled. rendering: .systemTint) } }
}
public struct SUIImage: View {
public enum Rendering { case systemTint case customColor(color: UIColor) case original }
private let uiImage: UIImage private let rendering: Rendering
[/code] Das Setzen des UIDesignRequriesCompatibility-Flags hat funktioniert, aber ich benötige einen Glaseffekt für andere Teile meiner App (und ich denke, dass es mit dem Glaseffekt über der Tastatur besser aussieht). Das ist also keine Option.
Ich muss ein paar Text- und Bildschaltflächen in der Tastatursymbolleiste anordnen und möchte Abstandshalter einfügen, um sie gleichmäßig anzuordnen. Dies funktionierte unter iOS 18. Unter iOS 26 ist...
Ich muss ein paar Text- und Bildschaltflächen in der Tastatursymbolleiste anordnen und möchte Abstandshalter einfügen, um sie gleichmäßig anzuordnen.
Bei der Bildschaltfläche fällt mir auf, dass der...
Ich muss ein paar Text- und Bildschaltflächen in der Tastatursymbolleiste anordnen und möchte Abstandshalter einfügen, um sie gleichmäßig anzuordnen.
Bei der Bildschaltfläche fällt mir auf, dass der...
Jest 30-Validierungsfehler unter Windows, während Jest 29 funktionierte
Ich versuche, Jest 30 unter Windows gemäß der offiziellen Anleitung „Erste Schritte“ einzurichten:
Ich versuche, ein SwiftUI-Blatt mit einer festen Höhe von 550 Punkten darzustellen, und ich erwarte, dass es auf allen iOS-Versionen 550 Punkte hoch bleibt.
.sheet(isPresented: $showSheet) {...