gpt4 book ai didi

flutter - 不包含脚手架错误。我知道我的方法没有脚手架方法,但它是具有脚手架的方法的子方法

转载 作者:IT王子 更新时间:2023-10-29 07:00:37 25 4
gpt4 key购买 nike

// On this noteItem long press i want to show a snackbar 
class NoteItem extends StatelessWidget {
NoteItem({Note note, this.removeNote}): note = note, super(key: ObjectKey(note));

final Note note;
final RemoveNote removeNote;

@override
Widget build(BuildContext context){
return ListTile(
onLongPress: () {
removeNote(note);
},
leading: CircleAvatar(
backgroundColor: Theme.of(context).primaryColor,
child: Text(note.title[0]),
),
title: Text(note.title),
);
}
}

// This class gives the state`enter code here`

class _NoteListState extends State<NoteList> {

void _addNote() {
setState(() {
widget.notes.add(Note(title: 'New Note', description: 'Successfully Added New Note'));
});
}

void _removeNote(Note note) {
setState(() {
widget.notes.remove(note);
Scaffold.of(context).showSnackBar( SnackBar( content: Text('Note Deleted!')));
});
}

@override
Widget build(BuildContext context){
return Scaffold(
appBar: AppBar(
title: Text('Notes List'),
),
body: ListView(
padding: EdgeInsets.symmetric(vertical: 8.0),
children: widget.notes.map((Note note) {
return NoteItem(
note: note,
removeNote: _removeNote,
);
}).toList(),
),
floatingActionButton: FloatingActionButton(
onPressed: _addNote,
tooltip: 'Add Note',
child: Icon(Icons.add),
),
);
}
}

如果您想查看完整代码,请转到此链接:- https://pastebin.com/h5HJWwdg

我试图从 NoteItem 返回一个脚手架,但在收到错误后意识到你不能这样做。还尝试使用同样无法正常工作的生成器。如果可能的话,如果您直接引用一些文档,那将会很有帮助,这样我就可以避免将来出现此类错误。

我正在学习 Flutter,几天前才开始使用它,所以如果您也能告诉我我在笔记应用程序上的工作方式是否正确,那将会很有帮助。

最佳答案

方法 _removeNote(您尝试获取脚手架的地方)是 NodeListState 的一个属性,它是 NodeList 的状态。 NodeList 在树中可能在其上方没有 Scaffold。然而,它有一个脚手架作为一个 child 。

这是我的做法。

在NodeList中创建一个属性

  final _scaffoldKey = GlobalKey<ScaffoldState>();

将其分配给我的脚手架的关键属性。

Scaffold(
key: _scaffoldKey,

然后像这样得到脚手架...

_scaffoldKey.currentState.showSnackBar(new SnackBar(
content: new Text("Select player"),
));

关于flutter - 不包含脚手架错误。我知道我的方法没有脚手架方法,但它是具有脚手架的方法的子方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51519055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com