Flutter點選事件和頁面傳值
阿新 • • 發佈:2019-01-04
- 點選事件
在flutter開發中,點選事件必須在佈局外面包裹InkWell,藉助InkWell來進行傳值,核心程式碼如下:
//如果要點選,外面必須包裹一層InkWell new InkWell( onTap: () { Navigator.of(context).push(new MaterialPageRoute(builder: (ctx) => new MovieList(movieType: movieType))); }, ..... }
- 頁面傳參
上一個頁面傳遞:如上點選事件進行傳遞
匯入movieList
import 'package:douban/pages/movie/movieList.dart';
傳遞資料
new MovieList(movieType: movieType)
下一個頁面接收資料
class MovieList extends StatefulWidget { String movieType; //構造器傳遞資料(並且接收上個頁面傳遞的資料) MovieList({Key key, this.movieType}) : super(key: key); @override State<StatefulWidget> createState() { // TODO: implement createState return new MovieListState(movieType: this.movieType); } }
class MovieListState extends State<MovieList> {
String movieType;
/**
* 構造器接收(MovieList)資料
*/
MovieListState({Key key, this.movieType}) {
}
這時movieType在MovieList 就可以使用了