linearGradientColor method

Container linearGradientColor(
  1. List<Color> colors, {
  2. AlignmentGeometry begin = Alignment.centerLeft,
  3. AlignmentGeometry end = Alignment.centerRight,
})

Implementation

Container linearGradientColor(List<Color> colors, {AlignmentGeometry begin = Alignment.centerLeft, AlignmentGeometry end = Alignment.centerRight}) {
  var newGradient = LinearGradient(colors: colors, begin: begin, end: end);
  // late Decoration newDecoration;
  if (decoration is BoxDecoration) {
    var newDecoration = (decoration as BoxDecoration).copyWith(gradient: newGradient);
    return copyWith(decoration: newDecoration);
  }
  // if (decoration is ShapeDecoration) {
  // var newDecoration = (decoration as ShapeDecoration).copyWith(gradient: newGradient);
  //   return copyWith(decoration: newDecoration);
  // }
  //todo 可以继续优化??
  return Container(child: this, decoration: BoxDecoration(gradient: LinearGradient(colors: colors, begin: begin, end: end)));
}