- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我认为标题是不言自明的。
基本上我需要有一个 LinearProgressIndicator 标签与当前进度相同的位置。像这样:
我想我需要使用 Stack
创建 Text
,但是我如何根据栏的进度来定位它?
最佳答案
您可以使用对齐小部件来对齐堆栈中的文本。使用对齐属性作为 Alignment.lerp(Alignment.topLeft, Alignment.topRight, _progressValue);
进度值应该是从 0 到 1
https://dartpad.dev/bbc452ca5e8370bf2fbf48d34d82eb93
import 'package:flutter/material.dart';
void main() {
runApp(new MaterialApp(
debugShowCheckedModeBanner: false,
home: new MyApp(),
));
}
class MyApp extends StatefulWidget {
@override
MyAppState createState() => new MyAppState();
}
class MyAppState extends State<MyApp> {
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBar(
title: new Text('Slider Demo'),
),
body: new Container(
color: Colors.blueAccent,
padding: new EdgeInsets.all(32.0),
child: new ProgressIndicatorDemo(),
),
);
}
}
class ProgressIndicatorDemo extends StatefulWidget {
@override
_ProgressIndicatorDemoState createState() =>
new _ProgressIndicatorDemoState();
}
class _ProgressIndicatorDemoState extends State<ProgressIndicatorDemo>
with SingleTickerProviderStateMixin {
AnimationController controller;
Animation<double> animation;
@override
void initState() {
super.initState();
controller = AnimationController(
duration: const Duration(milliseconds: 2000), vsync: this);
animation = Tween(begin: 0.0, end: 1.0).animate(controller)
..addListener(() {
setState(() {
// the state that has changed here is the animation object’s value
});
});
controller.repeat();
}
@override
void dispose() {
controller.stop();
super.dispose();
}
@override
Widget build(BuildContext context) {
print(animation.value);
return new Center(
child: new Stack(children: <Widget>[
LinearProgressIndicator(
value: animation.value,
),
Align(
alignment :Alignment.lerp(Alignment.topLeft, Alignment.topRight, animation.value),
child: Text("xxxxxxxxxxxxxxxxa"),
),
]));
}
}
关于Flutter - 如何在 LinearProgressIndicator 中添加跟随进度位置的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60658233/
我想使用 Row 显示一些 Text,然后显示 LinearProgressIndicator,使用以下代码: import 'package:flutter/material.dart'; void
有什么方法可以将 LinearProgressIndicator 的方向从水平方向更改为垂直方向? 我可以这样改变它的大小: Container( height: 1000, width: 2
我认为标题是不言自明的。 基本上我需要有一个 LinearProgressIndicator 标签与当前进度相同的位置。像这样: 我想我需要使用 Stack创建 Text ,但是我如何根据栏的进度来定
我正在学习 Flutter,虽然我不知道它是否正确。我想以任何方式使用 Material Librery 中的 LinearProgressIndicator 组件,但我不知道如何使用它我尝试了这段代
LinearProgressIndicator documentation有用地显示 valueColor 属性的存在,甚至提到“要指定常量颜色使用:new AlwaysStoppedAnimatio
如何使用来自 Firebase 存储的下载数据使用 LinearProgressIndicator 创建一个下载栏?我目前使用的功能: Future downloadBuscaDB() async{
我有一个 LinearProgressIndicator正确显示当前进度。现在我想要动画进度,我认为这将是 super 简单的 animateFloatAsState .好吧,不知道我不是在摸索什么,
我正在尝试向 Flutter 中的 LinearProgressIndicator 添加边框半径。 当我在下面的代码中用另一个小部件(例如 Text)替换 LinearProgressIndicato
我是一名优秀的程序员,十分优秀!