Вы можете добавить верхний и нижний foo и bar как первый и последний элементы списка. У ListView
будет list.length + 2
предметов.
body: Column(children: [
Text('foo'),
Expanded(
child: ListView.builder(
itemCount: list.length + 2,
itemBuilder: (context, index) {
if (index == 0)
return Text("foo");
else if (index < list.length + 1)
return Text("$index");
else
return Text('bar');
},
),
),
]),
в последнее время мне нужно было текстовое поле с водяным знаком, первое, что пришло мне в голову, были события OnLeave и OnEnter текстового поля, но сначала я погуглил, и сначала я получил две ссылки, это была ссылка в CodeProject который использовал пространство имен System.Drawing, а другой здесь использовал SendMessage () здесь http://vidmar.net/weblog/archive/2008/11/05/watermarked-textbox-in-windows-forms -on-.net.aspx .
Я полагаю, что SendMessage намного проще, и в нем также нет мерцания. хоть и пользовался.
Надеюсь, это будет вам полезно.
Это не столь просто, как можно было бы думать. Необходимо использовать использование Системы. Рисование пространства имен и переопределения событие OnPaint.
Вот некоторые ссылки некоторых людей, которые уже сделали это.