用了 screenutil, 想问一下要怎么用 widget test 确保 widgets 的高度和宽度在任何的屏幕 size 都不会造成 overflow?
alvindrakes opened this issue · comments
Loh Jin Xian commented
有木有用 screenutil 写 widget tests 的例子吗?
J Kendal commented
如果有人有同样的问题,并看到此
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
class _Wrapper extends StatelessWidget {
final Widget child;
_Wrapper(this.child);
@override
Widget build(BuildContext context) {
ScreenUtil.init(context, width: 1125, height: 2436, allowFontScaling: true);
return child;
}
}
Widget testableWidget({Widget child}) {
return MediaQuery(
data: MediaQueryData(),
child: CupertinoApp(
home: Scaffold(body: _Wrapper(child)),
),
);
}
void main() {
testWidgets('testingMyWidget', (WidgetTester tester) async {
await tester.pumpWidget(testableWidget(child: MyWidget()));
});
}