Вы, возможно, не сможете сделать SliverList округленным (даже в некоторой части), но вы можете настроить свой путь, поместив дочерние элементы списка в Столбец и оборачивая столбец в контейнер , затем устанавливая borderRadius контейнера .
И прокрутка по-прежнему работает отлично как обычно CustomScrollView
Вся идея состоит в том, чтобы Столбец работал для SliverList . Поэтому вам нужно установить childCount на 1 и разрешить Column обрабатывать все, что касается children
Вы можете попробовать то же самое для SliverGrid
Я написал пример с SliverList
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class Home extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: CustomScrollView(
slivers: <Widget>[
SliverAppBar(
title: Text("Hey"),
),
SliverList(
delegate: SliverChildBuilderDelegate(
(_, __){
return Container(
decoration: BoxDecoration(
color: Colors.orange,
borderRadius: BorderRadius.only(topLeft: Radius.circular(10), topRight: Radius.circular(10))
),
child: Column(
children: List.generate(10, (index) => Container(child: ListTile(title: Text("$index nothing")))),
),
);
},
childCount: 1
),
)
],
),
);
}
}
Надеюсь, это поможет вам