簡體   English   中英

在 Flutter 中的 Inkwell 小部件中添加邊框半徑

[英]Add border Radius in the Inkwell widget in flutter

我想使用inkwell小部件向容器添加懸停顏色屬性,但容器有自己的邊框半徑,當我使用inkwell使用懸停屬性時,它會采用其自定義形狀並使其在懸停后看起來呈矩形墨水瓶。

這是我的代碼片段:

InkWell(
            
            onTap: () {},
            hoverColor: Colors.red[200],
            child: Container(
              width: 70.w,
              height: 60.h,
              decoration: BoxDecoration(
                borderRadius: BorderRadius.circular(20),
              ),
              child: Row(
                children: [
                  Image.asset(
                    'images/call.png',
                    height: 30.h,
                  ),
                  Text(
                    'Call',
                    style: white,
                  ),
                ],
              ),
            ),
          ),

我希望我讓你很好地理解了這個問題

請幫助我解決問題或提供替代方案。

Inkwell小部件具有一個customBorder類型的屬性ShapeBorder 您可以使用它為您的Inkwell提供borderRadius

例如:

customBorder: RoundedRectangleBorder(
    borderRadius: BorderRadius.circular(20),
),

Inkwell小部件具有BorderRadius類型的屬性borderRadius

InkWell(
  borderRadius: BorderRadius.circular(25),
  // ...
);

要使飛濺也圓潤, clipBehaviorMaterial小部件使用合適的clipBehavior選項。

簡單的解決方案

不知何故,我與@馬蒂亞斯的答案達成一致,但如果你需要更真實的答案,而不是給RoundedRectangleBordercustomBorder屬性,那么只需使用CircleBorder()像下面的例子:

customBorder: CircleBorder()

您可以使用剪輯行為來避免硬編碼值:

    return Card(
      clipBehavior: Clip.antiAlias,
      child: InkWell(
InkWell(
  borderRadius: BorderRadius.circular(12),
  child: // ...
);

暫無
暫無

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

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