Кнопка xcode swiftui, как ее нажать программно (присвоить ей идентификатор?)

У меня есть работающее приложение для сканирования штрих-кода (я следовал этому руководству https://www.youtube.com/watch?v=44APgBnapag), единственное, чего мне не хватает, если запускать сканер штрих-кода при загрузке вместо того, чтобы пользователь нажимал кнопку кнопка

      var body: some View {
        
        NavigationView {
            
            .navigationBarItems (
                trailing:
                Button(action: { self.isPresented.toggle() } ) {
                    Image(systemName: "barcode")
                        .font(Font.system(size: 96))
                }.sheet(isPresented: $isPresented) {
                    BarCodeScanner(isbn: $isbn, foundBooks: $foundBooks)
                }   .padding(.top,42)
            )
            
        }
            
    }

Я попытался добавить .onAppear

      .onAppear {
            print("begin")
            BarCodeScanner(isbn: $isbn, foundBooks: $foundBooks)
        }

но Xcode говорит Result of 'BarCodeScanner' initializer is unused.

Затем я хотел попытаться нажать кнопку программно, но как дать этой кнопке идентификатор, чтобы код нажимал эту конкретную кнопку?

или есть другой способ запустить сканер штрих-кода, когда я открываю приложение?

1 ответ

Вам нужно установить isPresentedк Trueпри запуске приложения:

      ...
    .onAppear {
        isPresented = true
    }

Это должно работать. Он откроет ваш сканер штрих-кода, как только приложение запустится.

Другие вопросы по тегам