有人请解释一下streambuilder和futurebuilder之间的主要区别.我真的很困惑.
使用什么以及何时使用?
他们打算执行哪些任务?
他们每个人如何监听动态列表中的更改?
我正在开发的应用程序需要类似于 Messenger 的浮动聊天头。我想使用 Flutter 开发我的应用程序。我们可以这样做吗?
[
]
我希望用户在文本字段中输入文本。当用户单击 fab 时,文本将作为新行写入文件(附加)。我希望我的应用程序读取文件的内容,并将每一行显示为列表视图中输入文本字段下方的列表图块。当用户输入新文本时,该文本应立即出现在列表视图中。
我能够将文本写入文件。但如何读取文件并显示其内容呢?我应该使用streambuilder吗?下面是我到目前为止所做的代码:
import 'dart:async';
import 'dart:convert';
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:path_provider/path_provider.dart';
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Path Provider',
theme: new ThemeData(
primarySwatch: Colors.blue,
),
home: new MyHomePage(title: 'Path Provider', storage: FileStorage(),),
);
}
}
class FileStorage {
Future<String> get _localPath async {
final directory = await getTemporaryDirectory();
return directory.path;
}
Future<File> get _localFile async {
final path = await _localPath;
return File('$path/file.txt'); …Run Code Online (Sandbox Code Playgroud) 我想模糊一个脚手架的BottomNavigationBar 的背景,以便它可以给它后面的项目提供很酷的模糊效果。我怎样才能做到这一点?
更多信息:我尝试通过为 BottomNaviagtionBar 创建一个新主题来为 canvasColor 添加不透明度。这是我的代码:
bottomNavigationBar: new Theme(
data: Theme.of(context).copyWith(
canvasColor: Color(0xff424242).withOpacity(0.5),
),
child: new BottomNavigationBar(
onTap: navigationTapped,
currentIndex: _page,
items: [
new BottomNavigationBarItem(
icon: new Icon(Icons.home),
title: new Text('Home')
),
new BottomNavigationBarItem(
icon: new Icon(Icons.dashboard),
title: new Text('Menu')
),
new BottomNavigationBarItem(
icon: new Icon(Icons.date_range),
title: new Text('Dates')
)
],
),
)
这是我得到的输出:图像
令人惊讶的是,如您所见,根本不应用不透明度。我实际上不希望 BottomNavigationBar 不透明。我希望它被模糊化,以便它后面的内容可以在底部导航栏上被视为模糊的。我也试过将 BottomNavigationBar 包裹在 ImageFilter.blur() 中,但这也不起作用。