将小部件封装在自己的类中扑扑?

Car*_*ein 2 dart flutter

我正在尝试tile为自己创建一个listview。当磁贴放置在listview文件中时,它正在工作,但我想知道如何将tile小部件封装到其自己的类文件中。

具体来说,如果tile对象不带参数,我可以简单地扩展无状态小部件并调用该build方法以返回新的tile对象。但是,如果要使用参数(即自定义文本)创建tile对象,该如何传递这些信息?还是将小部件留在listview类中会更好?

例:

class Tile extends StatelessWidget {

  @override
  Widget build(BuildContext context){
    return _tile(); //Error, How do i pass the arguments?
  }
  Widget _tile(String text, String time) {
    return new Align(
      child: new Container(
        // padding: EdgeInsets.all(5.0),
        ...
Run Code Online (Sandbox Code Playgroud)

Phu*_*ran 6

我认为您可以简单地创建一个构造函数并使用它

import 'package:flutter/material.dart';

class Tile extends StatelessWidget {
  final String text;
  final String time;

  /// Here is your constructor
  Tile({Key key, this.text, this.time});

  @override
  Widget build(BuildContext context) {
    return _buildTitle(this.text, this.time);
  }

  Widget _buildTitle(String text, String time) {
    return new Align(
        child: new Container(
          // padding: EdgeInsets.all(5.0),
        ));
  }
}
Run Code Online (Sandbox Code Playgroud)