Flutter 颤振行滚动效果动画
我当前的项目有一个可以滚动的行,可以很好地工作,但是我找不到一种方法来进行某种静态滚动,当你滚动到一个项目时,该项目会自动居中 这就是我目前拥有的: 当卡片滚动时,当滚动完成时,卡片将保持在原来的位置: 我想要达到的效果是,当滚动到下一张卡时,卡会在中心对齐 有没有这样的小部件?试试这个Flutter 颤振行滚动效果动画,flutter,dart,widget,Flutter,Dart,Widget,我当前的项目有一个可以滚动的行,可以很好地工作,但是我找不到一种方法来进行某种静态滚动,当你滚动到一个项目时,该项目会自动居中 这就是我目前拥有的: 当卡片滚动时,当滚动完成时,卡片将保持在原来的位置: 我想要达到的效果是,当滚动到下一张卡时,卡会在中心对齐 有没有这样的小部件?试试这个 import 'package:flutter/material.dart'; final Color darkBlue = Color.fromARGB(255, 18, 32, 47); void ma
import 'package:flutter/material.dart';
final Color darkBlue = Color.fromARGB(255, 18, 32, 47);
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
final List<String> images = ["Me", "You", "Foo", "Baa"];
final PageController controller = PageController(viewportFraction:0.8);
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData.dark().copyWith(scaffoldBackgroundColor: darkBlue),
debugShowCheckedModeBanner: false,
home: Scaffold(
body: PageView.builder(
controller: controller,
itemCount: images.length,
itemBuilder: (context,index){
return Container(
margin: EdgeInsets.all(16),
child: Center(child:Text(images[index])),
color: Colors.grey.shade200
);
}
),
),
);
}
}
class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text('Hello, World!', style: Theme.of(context).textTheme.headline4);
}
}
解决办法很简单:
Padding(
padding: const EdgeInsets.symmetric(vertical: 80),
child: Container(
child: PageView(
controller: controller,
scrollDirection: Axis.horizontal,
pageSnapping: true,
physics: BouncingScrollPhysics(),
children: [CardMovie(), CardMovie(), CardMovie()],
),
),
)
使用PageView小部件并提供填充顶部,因为小部件的高度为全屏
您可以使用pageview builder在某些视图端口上实现同样的功能。您可以尝试@Dunggo谢谢,我将保存它以备下次使用project@meditat谢谢,这正是我需要的。PageView小部件完成了所有操作work@Jos欢迎光临