当尝试在a 的属性Navigator内部调用时,它不起作用:onTapPopupMenuItem
PopupMenuButton(itemBuilder: (BuildContext context) {
return [
PopupMenuItem(
child: Text('Edit'),
onTap: () => Navigator.of(context)
.push(MaterialPageRoute(builder: (context) => EditorPage())),
),
];
}),
Run Code Online (Sandbox Code Playgroud) 我目前正在使用该path_provider包来初始化Hive我的main.dart:
final appDocumentDirectory = await pathProvider.getApplicationDocumentsDirectory();
Hive.init(appDocumentDirectory.path);
Run Code Online (Sandbox Code Playgroud)
我想从我的资产文件夹中嵌入一个本地数据库文件,并按照 Youtube 教程(链接)进行操作,其中他使用该path包将数据库路径与数据库文件“连接”。这是代码:
_db = await openDatabase('assets/trails.db');
var databasePath = await getDatabasesPath();
var path = join(databasePath,'trails.db');
Run Code Online (Sandbox Code Playgroud)
文档说:
path:path包提供了操作路径的常用操作:连接、分割、规范化等。path_provider:一个 Flutter 插件,用于查找文件系统上的常用位置。但我现在的问题是,这两个包到底有什么区别?我是否可以删除pubspec.yaml文件中的其中一个并为两个用例使用一个包(以避免样板代码)?
我目前有TextFormField一个hintText:
目标是在 TextFormField 内添加单位,无论用户是否正在键入。它应该看起来像这样:
如何实现这一目标?另外,如何将值居中?
这是我当前的 TextFormField 代码:
TextFormField(
decoration: InputDecoration(
hintText: '0.0',
contentPadding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 5.0),
filled: true,
fillColor: Colors.white24,
floatingLabelBehavior: FloatingLabelBehavior.never,
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(10.0),
borderSide: BorderSide.none,
),
counterText: '',
),
),
Run Code Online (Sandbox Code Playgroud)