介绍

Container没有点击事件,重写Container后,点击Container的内容就有点击事件了

参考

重写Container代码

这里只实现了Container的三个属性,decorationwidthchild,其他的属性也可以参照如下的格式实现


import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

class ContainerRepository extends Container{
  final Widget child;
  final double width;
  final Decoration decoration;
  final Function onTap;  // 添加点击事件

  ContainerRepository({
    Key key,
    this.child,
    this.width,
    this.decoration,
    this.onTap,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    Widget w = Container(
        decoration: decoration,
        width: width,
        child: InkWell(               // 添加点击事件
          child: child,
          onTap: onTap,
        ),
      );

    return w;
  }
}
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐