習(xí)慣使用java的同學(xué)一定經(jīng)常使用java的接口回調(diào),flutter本事不支持內(nèi)部類(lèi),所以無(wú)法像java一樣實(shí)現(xiàn)接口回調(diào),那我們?cè)趺催M(jìn)行函數(shù)回調(diào)呢,
函數(shù)回調(diào)分兩種,一種是有參數(shù)的,一種是無(wú)參數(shù)的
//無(wú)參數(shù)
@required VoidCallback onCall; //無(wú)參數(shù)的用VoidCallback來(lái)定義函數(shù),參考button的回調(diào)監(jiān)聽(tīng)
//傳遞形式
TabBarPage2((){
print("回調(diào)執(zhí)行了");
}),
//有參數(shù)的 先定義一個(gè)函數(shù)類(lèi)型
typedef MyCallBack=Function(String string); //自定義了一個(gè) 傳String的函數(shù)類(lèi)型
@required MyCallBack onCall; //這里類(lèi)型用我們自定義的
//傳遞形式
TabBarPage2((v){ //給對(duì)應(yīng)的參數(shù)數(shù)量即可
print("回調(diào)執(zhí)行了==${v}");
setState(() {
name=v;
});
}),