Flutter中的Scrollbar小部件似乎有固定的厚度6。我认为Scrollbar看起来很难看,它太厚了。另外,如果我将 Flutter Scrollbar 与我设备中其他应用程序中的滚动条进行比较,它们看起来都不同(它们看起来更好)。
我可以在不创建新的滚动条小部件的情况下更改滚动条厚度吗?
我有一个想法,强制滚动条部分超出屏幕,使其看起来更薄,但我不知道该怎么做。
我将滚动条与 ListView 一起使用。
小智 5
只需更改thickness滚动条主题数据的属性:
class MyApp extends StatelessWidget {
final double _thickness = 2;
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData.light().copyWith(
scrollbarTheme: ScrollbarThemeData().copyWith(
thickness: MaterialStateProperty.all(_thickness),
)
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
我找到了一个相对简单的解决方法,将滚动条包装在 Stack 小部件中,并向 Stack 添加一个容器,该容器将隐藏部分滚动条。屏幕右边缘会有一个小的“白色”边距,但您会在操作系统设置视图中看到类似的边距(至少在 Galaxy S7 设置应用程序中)。示例代码(请注意,这仅适用于 Android,未在 iOS 中进行测试):
Widget build(BuildContext context) {
return Stack(
alignment: Alignment.topRight,
fit: StackFit.loose,
children: <Widget>[
Scrollbar(
child: buildListView(),
),
Container(
width: 3,
color: Theme.of(context).canvasColor,
)
],
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3379 次 |
| 最近记录: |