我试图在没有构建方法的自定义类中获取颤动的屏幕大小。如何在不使用 buildcontext 类的情况下获得屏幕大小?
以下代码:
class ShapesPainter extends CustomPainter {
@override
void paint(Canvas canvas, Size size) {
BuildContext context;
double width = MediaQuery.of(context).size.width;
double height = MediaQuery.of(context).size.height;
final paint = Paint();
paint.color = Colors.deepOrange;
var center = Offset(size.width / 2, size.height / 2);
print(height);
print(width);
Rect rect = Rect.fromLTWH(0.0, 0.0, width, height);
canvas.drawRect(rect, paint);
}
@override
bool shouldRepaint(CustomPainter oldDelegate) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
给出以下错误:
在paint()期间抛出以下断言:'package:flutter/src/widgets/media_query.dart':失败的断言:第689行pos 12:'context != null':不是真的。
如何在 dart 中生成两个不同的随机数?
我使用下面的代码生成了两个随机数。
int rand1 = Random().nextInt(16);
int rand2 = Random().nextInt(16);
Run Code Online (Sandbox Code Playgroud)
if(rand1 == rand2)
// generate new random
Run Code Online (Sandbox Code Playgroud)
如何生成新的随机数直到rand1 != rand2?