簡體   English   中英

Flutter Container BoxShadow 不顯示

[英]Flutter Container BoxShadow doesn't show

這是我此刻的代碼:

ClipRRect(
  borderRadius: BorderRadius.circular(11),
  child: Container(
    decoration: BoxDecoration(
      gradient: LinearGradient(
        begin: FractionalOffset.bottomLeft,
        end: FractionalOffset.topRight,
        colors: <Color>[Colors.purple, AppBaseColors.orange],
      ),
      boxShadow: [BoxShadow(color: Colors.yellow)]
    ),
    child: Material(
      child: InkWell(
        onTap: () {
          print("tapped");
        },
        child: Container(
          width: ButtonTheme.of(context).minWidth,
          height: ButtonTheme.of(context).height,
          child: Center(
            child: Text(
              "log in",
              style: TextStyle(
                  color: Colors.white, fontWeight: FontWeight.bold),
            ),
          ),
        ),
      ),
      color: Colors.transparent,
    ),
  ),
),

我嘗試了什么:

  • 在第一個Container 中添加boxShadow
  • 在第二個容器中添加boxShadow
  • boxShadow添加另一個容器作為ClipRRect的父
  • Material 中添加boxShadow作為 shadowColor(ofc 不起作用,因為我沒有任何類型的陰影)
  • 上面的所有情況下還添加了spreadRadiusblurRadius ,但沒有任何改變。

知道我做錯了什么嗎?

您需要進行以下更改:

  • 刪除ClipRRect小部件。
  • 添加borderRadiusBoxDecoration
  • 添加一個Offset到你的BoxShadow

     Container( decoration: BoxDecoration( color: Colors.blue, gradient: LinearGradient( begin: FractionalOffset.bottomLeft, end: FractionalOffset.topRight, colors: <Color>[Colors.purple, Colors.orange], ), borderRadius: BorderRadius.circular(11), boxShadow: [ BoxShadow(color: Colors.yellow, offset: Offset(5.0, 5.0)) ]), child: Material( borderRadius: BorderRadius.circular(11), clipBehavior: Clip.hardEdge, child: InkWell( onTap: () { print("tapped"); }, child: Container( width: ButtonTheme.of(context).minWidth, height: ButtonTheme.of(context).height, child: Center( child: Text( "log in", style: TextStyle( color: Colors.white, fontWeight: FontWeight.bold), ), ), ), ), color: Colors.transparent, ), ),

我通過刪除clipBehavior或將其設置為Clip.noneClip.none

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM