在 flutter 中围绕字母创建圆圈

Sha*_*min 6 dart flutter flutter-layout

我试图在字母周围创建一个圆圈,这是我的代码,但它并没有创建一个完美的圆圈

         Container(
            padding: EdgeInsets.all(8),
            decoration: BoxDecoration(
                borderRadius: BorderRadius.circular(50),
                border: Border.all(color: Colors.white, width: 2)),
            child: InkWell(
              child: Text(
                "A",
                textAlign: TextAlign.center,
                style: TextStyle(
                    fontWeight: FontWeight.bold,
                    color: Colors.white,
                    fontSize: 15),
              ),
            ),
          ),
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我还尝试过容器高度和宽度,然后隐藏了字母的某些部分。

         Container(
            padding: EdgeInsets.all(8),
            decoration: BoxDecoration(
                borderRadius: BorderRadius.circular(50),
                border: Border.all(color: Colors.white, width: 2)),
            child: InkWell(
              child: Text(
                "A",
                textAlign: TextAlign.center,
                style: TextStyle(
                    fontWeight: FontWeight.bold,
                    color: Colors.white,
                    fontSize: 15),
              ),
            ),
          ),
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但如果我使用图标小部件而不是文本小部件,它就会创建完美的圆形,

          Container(
            height: 30,
            width: 30,
            padding: EdgeInsets.all(8),
            decoration: BoxDecoration(
                borderRadius: BorderRadius.circular(50),
                border: Border.all(color: Colors.white, width: 2)),
            child: InkWell(
              child: Text(
                "A",
                textAlign: TextAlign.center,
                style: TextStyle(
                    fontWeight: FontWeight.bold,
                    color: Colors.white,
                    fontSize: 15),
              ),
            ),
          )
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Hut*_*yad 12

用这个:

 CircleAvatar(
      backgroundColor: Colors.blue,
      child: Text("A"),
  );
    
Run Code Online (Sandbox Code Playgroud)

您还可以使用 中的许多其他标志CircleAvatar,例如maxRadiusforegroundImage,如下所示:

 CircleAvatar(
      backgroundColor: Colors.blue,
      child: Text("A"),
      maxRadius: 30,
      foregroundImage: NetworkImage("enterImageUrl"),
  );
Run Code Online (Sandbox Code Playgroud)

看起来像这样:

在此输入图像描述


Sar*_*lvi 4

对于容器,您可以使用该shape属性为其赋予圆形形状。

它会是这样的:

Container(
  decoration: BoxDecoration (
     shape: BoxShape.circle,
  ),
child: ....
)
Run Code Online (Sandbox Code Playgroud)