openplanning

Hướng dẫn và ví dụ Flutter ContinuousRectangleBorder

  1. ContinuousRectangleBorder
  2. Examples
  3. side
  4. borderRadius

1. ContinuousRectangleBorder

ContinuousRectangleBorder tạo ra một đường viền hình chữ nhật với các chuyển tiếp liên tục mượt mà giữa các cạnh thẳng và các góc tròn.
ContinuousRectangleBorder constructor
const ContinuousRectangleBorder(
  {BorderSide side: BorderSide.none,
  BorderRadiusGeometry borderRadius: BorderRadius.zero}
)
Về cơ bản cách sử dụng của ContinuousRectangleBorder giống với RoundedRectangleBorder, chúng đều tạo ra một viền hình chữ nhật với các góc tròn, tuy nhiên góc tròn được tạo ra bởi ContinuousRectangleBorder mượt mà hơn.

2. Examples

Ví dụ: Sử dụng ContinuousRectangleBorder cho một Container:
(ex1)
Container(
  width: 300,
  height: 150,
  decoration: ShapeDecoration(
      color: Colors.white,
      shape: ContinuousRectangleBorder (
          borderRadius: BorderRadius.circular(32.0),
          side: BorderSide(
              width: 10,
              color: Colors.blue
          )
      )
  ),
  child: Center(
      child: Text(
          "Flutter",
          style: TextStyle(fontSize: 50)
      )
  ),
)
Sử dụng toán tử cộng ( + ) để cộng 2 ShapeBorder để tạo ra một viền kết hợp:
(ex2)
Container(
  width: 300,
  height: 150,
  decoration: ShapeDecoration(
      color: Colors.white,
      shape: ContinuousRectangleBorder (
          borderRadius: BorderRadius.circular(16.0),
          side: BorderSide(
              width: 10,
              color: Colors.blue
          )
      ) + ContinuousRectangleBorder (
          borderRadius: BorderRadius.circular(32.0),
          side: BorderSide(
              width: 20,
              color: Colors.green
          )
      )
  ),
  child: Center(
      child: Text(
          "Flutter",
          style: TextStyle(fontSize: 50)
      )
  ),
)

3. side

side - Cung cấp các thông số liên quan tới viền chẳng hạn như mầu sắc, chiều rộng, kiểu dáng.
BorderSide side: BorderSide.none
BorderSide constructor
const BorderSide (
    {Color color: const Color(0xFF000000),
    double width: 1.0,
    BorderStyle style: BorderStyle.solid}
)
  • Hướng dẫn và ví dụ Flutter BorderSide
Chú ý: Property ContinuousRectangleBorder.side sẽ không làm việc với ElevatedButton, TextButtonOutlinedButton, nó bị ghi đè (override) bởi ButtonStyle.side.

4. borderRadius

borderRadius - cung cấp giá trị bán kính 4 góc của hình chữ nhật.
BorderRadiusGeometry borderRadius: BorderRadius.zero
  • Hướng dẫn và ví dụ Flutter BorderRadiusGeometry
Container(
  width: 300,
  height: 150,
  decoration: ShapeDecoration(
      color: Colors.white,
      shape: ContinuousRectangleBorder (
          borderRadius: BorderRadius.only(
              bottomLeft: Radius.zero,
              topLeft:   Radius.zero,
              bottomRight: Radius.circular(20),
              topRight: Radius.circular(45)
          ),
          side: BorderSide(
              width: 10,
              color: Colors.blue
          )
      )
  ),
  child: Center(
      child: Text(
          "Flutter",
          style: TextStyle(fontSize: 50)
      )
  ),
)

Các hướng dẫn lập trình Flutter

Show More