Я новичок в разработке iOS и Swiftui, и у меня есть индивидуальный просмотр заголовка, который я хотел бы разместить на своем домашнем экране. Я разместил представление на панели инструментов блокировку, обернутая с помощью инструментов, с .principal размещением. Он работает, как и ожидалось, в предварительном iOS 26, как показано на изображении
Однако при проверке на IOS 26, балл инструмент показывается кусочком, как показано ниже . src = "https://i.sstatic.net/f5xvvet6m.png"/>
Код для домашнего экрана и пользовательского заголовка
ScrollView {
Group {
//Code for grid list
}
.navigationTitle(Localizations.homeTabKey)
.navigationBarTitleDisplayMode(.inline)
.toolbar {
ToolbarItem(placement: .principal) {
SearchHeaderView(onTap: {
coordinator.push(.search, type: .fullScreenCover)
}).padding(.bottom, 8).frame(maxWidth: .infinity)
}
}
}
< /code>
searchHeaderView < /p>
struct SearchHeaderView: View {
let onTap: () -> Void
let onCameraAction: () -> Void
let onMicAction: () -> Void
init(
onTap: @escaping () -> Void = {},
onCameraAction: @escaping () -> Void = {},
onMicAction: @escaping () -> Void = {}
) {
self.onTap = onTap
self.onCameraAction = onCameraAction
self.onMicAction = onMicAction
}
var body: some View {
HStack {
Text(Localizations.search)
.foregroundColor(.ratingForeground)
.font(.system(size: 14))
.padding(.horizontal, 8)
Spacer()
ActionButtonsView(
onCameraAction: {
},
onMicAction: {
}
).padding(.horizontal, 8)
}.frame(maxWidth: .infinity)
.overlay(
RoundedRectangle(cornerRadius: 6)
.stroke(lineWidth: 0.8)
.foregroundColor(
Constants.activeColorPalette.searchStroke
)
).background(
Rectangle()
.fill(Color.clear)
.contentShape(Rectangle())
.onTapGesture {
onTap()
}
)
}
}
< /code>
Как я могу достичь аналогичного поведения в iOS 26? Я попытался изменить размещение элемента панели инструментов и установить максимальную пробку на бесконечность, но, кажется, ничего не работает.>
Подробнее здесь: https://stackoverflow.com/questions/797 ... -in-ios-26