在文本字段Flutter中添加阴影

时间:2020-05-28 13:44:54

标签: flutter flutter-layout

我有想要用于我的应用程序的设计,但是我不确定如何添加框阴影。阴影在TextField的内部。请有人帮助我,并为我指出正确的方法吗?

The design I'd like top replicate

(“文本字段”顶部的方框阴影)

干杯, 杰克

1 个答案:

答案 0 :(得分:0)

您可以使用容器作为背景,例如使用Linear Gradient来实现以下目的:

enter image description here

Container(
      decoration: ShapeDecoration(
        gradient: LinearGradient(
          colors: [Color(0xFFe6dfd8), Color(0xFFf7f5ec)],
          begin: Alignment.topCenter,
          end: Alignment.bottomCenter,
          stops: [0.0, 0.4],
          tileMode: TileMode.clamp,
        ),
        shape: RoundedRectangleBorder(
          borderRadius: BorderRadius.all(Radius.circular(32.0)),
        ),
      ),
      child: TextField(
          expands: false, 
            style: TextStyle(fontSize: 20.0, color: Colors.black54),
            decoration: InputDecoration(
              contentPadding: EdgeInsets.all(12.0),
              prefixIcon: Icon(
                Icons.email,
                color: Colors.black54,
              ),
              hintText: 'email',
              hintStyle: TextStyle(color: Colors.black54),
              focusedBorder: OutlineInputBorder(
                borderSide: BorderSide(color: Colors.white),
                borderRadius: BorderRadius.circular(32.0),
              ),
              enabledBorder: UnderlineInputBorder(
                borderSide: BorderSide(color: Colors.white),
                borderRadius: BorderRadius.circular(32.0),
              ),
            ),
          ),
    );

您可以使用Radial GradientBox Shadow或@Jakk所说的Neumorphic形状来改善效果。

希望有帮助。