iOS26からLiquid Glassが導入され、iOS全体でデザインの変更が行われた。
その一つに検索バーの変更が含まれ、TabView等と統合される形に変更されている。

TabViewであれば実装方法が簡単に見つかるが、ToolBarのBottomBarに配置すると少し厄介である。
searchableを単体でtoolbarに当てるとBottomBarの位置に表示されるが、ToolbarItemを配置すると上側に移動してしまう。
解決方法として、システムコンポーネントの位置を指定できるDefaultToolbarItemを使用する。
前後にToolbarSpacerと配置したいToolbarItemを置くことで共存できるようになる。
.toolbar {
DefaultToolbarItem(kind: .search, placement: .bottomBar)
ToolbarSpacer(.fixed, placement: .bottomBar)
ToolbarItem(placement: .bottomBar) {
Button(action: {
print("add action")
}) {
Label("追加", systemImage: "plus")
}
}
}
.searchable(
text: $search,
placement: .toolbar,
prompt: String(localized: "検索")
)