Widget servicesListview() {
return Container(
decoration: new BoxDecoration(color: const Color(0xFFEAEAEA)),
child: Column(
children: <Widget>[
ListView.builder(
scrollDirection: Axis.vertical,
itemCount: menServicesList.length,
itemBuilder: (BuildContext context, int index) {
Text(menServicesList[index].name);
}),
],
));
}
每当我调用此方法列表不可见时,我就在flutter项目中实现listview。页面变为空白,请帮助我解决此问题
答案 0 :(得分:2)
您在return
中缺少itemBuilder
语句
itemBuilder: (BuildContext context, int index) {
return Text(menServicesList[index].name);
}),
或
itemBuilder: (BuildContext context, int index) => Text(menServicesList[index].name)),
答案 1 :(得分:1)
如果从ListView中删除Column小部件,该列表肯定会出现 以及是否要为ListView的每个元素赋予装饰属性。
Widget servicesListview() {
return ListView.builder(
scrollDirection: Axis.vertical,
itemCount: menServicesList.length,
itemBuilder: (BuildContext context, int index) {
Container(
decoration: new BoxDecoration(color: const Color(0xFFEAEAEA)),
child: Text(menServicesList[index].name)
);
})
}
答案 2 :(得分:0)
将ListView包裹在Expanded
或Container
小部件中,如果使用Container
,则需要设置高度/宽度。
发生这种情况是因为ListView
没有可以编辑的height / width属性。
编辑
别忘了在itemBuilder属性内返回文本。
答案 3 :(得分:0)
我有同样的问题。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import serial
import time
import binascii
import struct
s=serial.Serial('/dev/ttyUSB0',19200,bytesize=8, parity='O', stopbits=1,timeout=None, xonxoff=0)#
message_bytes = "03060000000149e8".decode('hex'
# print str(message_bytes)
s.write(message_bytes)
s.flushInput()
s.flushOutput()
time.sleep(0.1)
# print s.read(1)
# print bytes(s.read(15))#.encode('hex')
# print binascii.hexlify(s.read(15))
serial_data =''
while s.inWaiting() > 0:
c=s.read(1)
# or c=ser.read(1).decode('latin1')
serial_data += c
s.flushOutput()
print hex(int(c.encode('hex'),16))
# w = struct.unpack("h", c)[0]
# print w
# print binascii.hexlify(c)
# print int(c,16)
print serial_data.encode('hex')
print binascii.hexlify(serial_data.replace('\n',''))#.decode('hex')
# message_bytes_2='03060002ff9c6871'.decode("hex")
# # kk="\x01\x06\x00\x02\x03\xE8\x28\xB4"
# s.write(message_bytes_2)
# time.sleep(0.01)
#
# print s.read(15).encode('hex')
# s.reset_output_buffer()
# message_bytes_2='030300000002c5e9'.decode("hex")
# # kk="\x01\x06\x00\x02\x03\xE8\x28\xB4"
# print s.write(message_bytes_2)
# time.sleep(0.1)
#
s.close()
[1]: https://i.stack.imgur.com/wkXkv.png
[2]: https://i.stack.imgur.com/lkdWK.png
[3]: https://i.stack.imgur.com/ClSjN.png
在ListView.builder
内不起作用,必须使用Column
。
Expanded
小部件允许您使用相对的小部件扩展和填充空间。
看到这个:
Expanded