在 SwiftUI 中使用搜索欄
SwiftUI 是 Apple 在 WWDC 2019 推出的新框架,它可以讓開發者更輕鬆地建立出跨平台的 App,而在 SwiftUI 中使用搜索欄也是一個很常見的功能。本文將會介紹如何在 SwiftUI 中使用搜索欄,讓你的 App 更容易被使用者找到。
在 SwiftUI 中使用搜索欄,可以讓使用者更容易地找到他們想要的資料,而且也可以讓 App 的 UI 更加簡潔。首先,我們需要先建立一個 SearchBar 的 View,並且將它放在我們的 App 中:
struct SearchBar: View {
@Binding var text: String
var body: some View {
HStack {
TextField("Search ...", text: $text)
.padding(7)
.padding(.horizontal, 25)
.background(Color(.systemGray6))
.cornerRadius(8)
.overlay(
HStack {
Image(systemName: "magnifyingglass")
.foregroundColor(.gray)
.frame(minWidth: 0, maxWidth: .infinity, alignment: .leading)
.padding(.leading, 8)
}
)
}
}
}
接著,我們需要將 SearchBar 放入我們的 App 中,並且將它與我們的資料綁定:
struct ContentView: View {
@State private var searchText = ""
var body: some View {
VStack {
SearchBar(text: $searchText)
List {
// Your data here
}
}
}
}
最後,我們需要將我們的資料與 SearchBar 綁定,以便讓使用者可以搜尋到他們想要的資料:
struct ContentView: View {
@State private var searchText = ""
var body: some View {
VStack {
SearchBar(text: searchText)
List {
ForEach(data.filter {
self.searchText.isEmpty ? true :0.name.localizedStandardContains(self.searchText)
}, id: \.self) { item in
// Your data here
}
}
}
}
}
在上面的程式碼中,我們使用了 filter 來篩選出使用者想要的資料,並且將它們顯示在 List 中。
總結來說,在 SwiftUI 中使用搜索欄是一個很簡單的事情,只要將 SearchBar 放入 App 中,並且將它與資料綁定,就可以讓使用者更容易地找到他們想要的資料。
推薦閱讀文章
How to add a search bar to a SwiftUI list
How to Create a Search Bar in SwiftUI
SwiftUI Search Bar Tutorial
How to Add Search Bar to SwiftUI List
Adding a search bar to a list</a
延伸閱讀本站文章
延伸閱讀本站文章
SwiftUI 入門指南
Swift 圖片緩存 🎥高效快速存取圖片
Swift UIViewController 自定義返回按钮 🔙🎨
Swift UIGestureRecognizer使用🖐️ – 手勢辨識教學
Swift 離線資料存取 💾 離線資料快速存取法
Swift 影片拍攝:AVCaptureSession 🎥
Swift 圖片下載 🖼️
💾Swift 存儲 & 讀取數據 | 數據持久化 💾
Swift 動畫效果實作 (UIView.animate)
Swift 數字輪播器 🔢🔄