Swipe amallari


ULASHISH

SwiftUI ro‘yxatlar va formalar: swipe amallari

Ro‘yxat qatorlariga .swipeActions yordamida kontekstli amallar qo‘shing.


Misol: o‘ng tomondan o‘chirish (trailing delete)

Misol

import SwiftUI

struct SwipeTrailingDemo: View {
  @State private var items = ["A","B","C"]
  var body: some View {
    List {
      ForEach(items, id: \.self) { item in
        Text(item)
          .swipeActions(edge: .trailing) {
            Button(role: .destructive) { items.removeAll { $0 == item } } label: { Label("Delete", systemImage: "trash") }
          }
      }
    }
  }
}
import SwiftUI

struct ContentView: View { var body: some View { SwipeTrailingDemo() } }
import SwiftUI

@main
struct MyApp: App { var body: some Scene { WindowGroup { ContentView() } } }

Misolni ishga tushirish »



Misol: chap tomondagi amallar (leading actions)

Misol

import SwiftUI

struct SwipeLeadingDemo: View {
  @State private var items = ["A","B","C"]
  @State private var favorites: Set<String> = []
  var body: some View {
    List {
      ForEach(items, id: \.self) { item in
        HStack { Text(item); if favorites.contains(item) { Image(systemName: "star.fill").foregroundStyle(.yellow) } }
          .swipeActions(edge: .leading) {
            Button { favorites.insert(item) } label: { Label("Favorite", systemImage: "star") }
            Button { /* share */ } label: { Label("Share", systemImage: "square.and.arrow.up") }
          }
      }
    }
  }
}
import SwiftUI

struct ContentView: View { var body: some View { SwipeLeadingDemo() } }
import SwiftUI

@main
struct MyApp: App { var body: some Scene { WindowGroup { ContentView() } } }

Misolni ishga tushirish »



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!