button2b function

dynamic button2b(
  1. String text,
  2. Function _callback, {
  3. TextStyle? style,
  4. bool enable = true,
  5. Color? color,
})

Implementation

button2b(String text, Function _callback, {TextStyle? style, bool enable = true, Color? color,}){
  var _color = aTheme.mainColor;
  if (color != null)
    _color = color;
  return Stack(
    children: <Widget>[
      Container(
          decoration: BoxDecoration(
            color: (enable) ? _color : Colors.grey.withOpacity(0.5),
            borderRadius: BorderRadius.circular(aTheme.radius),
          ),
          child: Stack(
            children: [
              Container(
                  padding: EdgeInsets.only(top: 7, bottom: 7, left: 13, right: 13),
                  child: FittedBox(fit: BoxFit.scaleDown,
                    child: Text(text, style: style ?? aTheme.style14W600White,
                      textAlign: TextAlign.center, overflow: TextOverflow.ellipsis,),
                  )),

              if (enable)
                Positioned.fill(
                  child: Material(
                      color: Colors.transparent,
                      clipBehavior: Clip.hardEdge,
                      shape: RoundedRectangleBorder(borderRadius:BorderRadius.circular(aTheme.radius) ),
                      child: InkWell(
                        splashColor: Colors.black.withOpacity(0.2),
                        onTap: (){
                          _callback();
                        }, // needed
                      )),
                )

            ],
          )
      ),
    ],
  );
}