这是必需的开关 Required/expected switch
我正在使用flutter的“开关”小部件来执行此操作,但无法接近所需的开关。使用“变换”增加开关的大小,但增加整个开关的大小。关于如何匹配给定图像的任何想法? 我在这里: Where I am at
答案 0 :(得分:0)
Switch
小部件使用自适应模式,如果您检查源代码,则会发现以下内容:
@override
Widget build(BuildContext context) {
switch (widget._switchType) {
case _SwitchType.material:
return buildMaterialSwitch(context);
case _SwitchType.adaptive: {
final ThemeData theme = Theme.of(context);
assert(theme.platform != null);
switch (theme.platform) {
case TargetPlatform.android:
case TargetPlatform.fuchsia:
return buildMaterialSwitch(context);
case TargetPlatform.iOS:
return buildCupertinoSwitch(context);
}
}
}
assert(false);
return null;
}
}
它将对buildMaterialSwitch
使用Android
方法,对于iOS将使用buildCupertinoSwitch
。
检查buildCupertinoSwitch
方法:
Widget buildCupertinoSwitch(BuildContext context) {
final Size size = getSwitchSize(Theme.of(context));
return Container(
width: size.width, // Same size as the Material switch.
height: size.height,
alignment: Alignment.center,
child: CupertinoSwitch(
dragStartBehavior: widget.dragStartBehavior,
value: widget.value,
onChanged: widget.onChanged,
activeColor: widget.activeColor,
),
);
}
那是关键,然后您必须使用CupertinoSwitch
小部件:),只是不要忘记添加导入:
import 'package:flutter/cupertino.dart';