Flutter ListView不可见

时间:2019-02-13 12:22:08

标签: flutter

 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。页面变为空白,请帮助我解决此问题

4 个答案:

答案 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包裹在ExpandedContainer小部件中,如果使用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内不起作用,必须使用ColumnExpanded小部件允许您使用相对的小部件扩展和填充空间。

看到这个:

Expanded