2016-08-09 12 views
1

クロージャ内で関数を使用しようとしていますが、 '型の値をクロージャの結果型Bool'に変換できません。次のコードは、エラーを示しています。どうすればこの作品を作れますか?クロージャで関数を使用する

func test1(){ 
    test2(){ success in 
     self.test1() 
    } 
} 

func test2(completionHandler: (Bool) -> Bool){ 
    completionHandler(true) 
} 

答えて

1

あなたはtest2閉鎖Boolを返すように指定し、そう返す1:

func test1(){ 
    test2 { (success) -> Bool in 
     test1() 
     return success 
    } 
} 

しているあなたはそれから値を返すようにしたくない場合はtest2の閉鎖戻り、ボイド:

func test1(){ 
    test2 { (success) in 
     test1() 
    } 
} 

func test2(completionHandler: (Bool) -> Void){ 
    completionHandler(true) 
} 
関連する問題