Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
286 of 1024 menu
◀ ▶

Метод drawRRect

Метод drawRRect класса Canvas рисует скруглённый прямоугольник. Фигура это RRect: прямоугольник и радиусы углов. Кисть Paint задаёт цвет.

Синтаксис

canvas.drawRRect(rrect, paint)

Параметры

Параметр Описание
rrect Скруглённый прямоугольник RRect.
paint Кисть Paint. Из неё берутся цвет, толщина и то, заливка это или контур.

Пример

Давайте вызовем drawRRect на CustomPaint:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: CustomPaint( size: const Size(220, 100), painter: _DrawRRectPainter(), ), ), ), ), ); } class _DrawRRectPainter extends CustomPainter { @override void paint(Canvas canvas, Size size) { final paint = Paint()..color = Colors.indigo; final rrect = RRect.fromRectAndRadius( Rect.fromLTWH(16, 16, size.width - 32, size.height - 32), Radius.circular(12)); canvas.drawRRect(rrect, paint); } @override bool shouldRepaint(covariant CustomPainter oldDelegate) => false; }

На экране виден результат рисования на холсте.

Пример

Давайте повторим рисунок в области побольше:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: CustomPaint( size: const Size(280, 120), painter: _DrawRRectPainter2(), ), ), ), ), ); } class _DrawRRectPainter2 extends CustomPainter { @override void paint(Canvas canvas, Size size) { final paint = Paint()..color = Colors.indigo; final rrect = RRect.fromRectAndRadius( Rect.fromLTWH(16, 16, size.width - 32, size.height - 32), Radius.circular(12)); canvas.drawRRect(rrect, paint); } @override bool shouldRepaint(covariant CustomPainter oldDelegate) => false; }

На экране та же фигура в более широком CustomPaint.

Смотрите также

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить