2016-11-16 9 views
0

"caricaLavori"機能の後に "caricaImmagine"という機能を起動する必要があります。コードでは、caricaImmagineはcaricaLavoriが配列にアイテムを追加する必要があることが明らかです。別の即時の終了時に機能を起動

私はthisを試しましたが、実装方法はわかりません。ここで

は(viewWillAppearで呼ばれる)「newMethod」です:

func newMethod(){ 
    print("login: \(login)") 

    let userFetch = NSFetchRequest<NSFetchRequestResult>(entityName: "UserEntity") 

    do { 
     fetchUsers = try moc.fetch(userFetch) as! [User] 
    } catch { 
     fatalError("Failed to fetch person: \(error)") 
    } 

    do{ 
     let users = try moc.fetch(userFetch) 
     if(users.count > 0){ 
      print("utente connesso") 
      tableview.delegate = self 
      tableview.dataSource = self 
      let d_email = fetchUsers.first!.email 

      caricaLavori(datore_email: d_email!) 
      for i in 0...lavori.count{ 
       caricaImmagine(id_lavoro: lavori[i].id) 
      } 

     }else{ 
      DispatchQueue.main.async { 
       self.performSegue(withIdentifier: "area_utente_segue", sender: self) 
      } 
     } 
    }catch {} 
} 

あなたが他の2つの機能が必要な場合、私はPHPスクリプトからそれらの両方が負荷データを(この記事を編集し、両方のHTTPリクエストをやります)

はみんな

答えて

1

ありがとうあなたは「両方がHTTP要求を行い、PHPスクリプトからそれらの両方が負荷データ」と言います。これは重要な情報です。

iOSでは、ネットワークアクセスを非同期で実行する必要があります。つまり、ネットワーク要求を送信した関数がその要求を送信してから、要求がリモートサーバーに送信される前にすぐに戻ります。

解決方法は、完了ハンドラを実行するためのメソッドを記述することです。このメソッドは、タスクが完了したら完了ハンドラを呼び出します。

完了ハンドラを使用しての作業例を含むコードについては、以下のスレッドで私の答えを見てみましょう:そのポスト(そして、それはへのリンクサンプルアプリケーション)が書き込まれたことを

Storing values in completionHandlers - Swift

注意をSwift 2で更新する必要があります。

+0

ありがとうございます!出来た! –

関連する問題