首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >从列表中创建文本框

从列表中创建文本框
EN

Stack Overflow用户
提问于 2019-10-09 23:52:34
回答 2查看 2.8K关注 0票数 1

我有这样的列表(它一直在变化,因为这是API的响应,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tableValue=[
      {
        "id": "RegNo",
        "displayName": "Enter Register No",
        "type": "string",
        "value": "1XYZ19AA"
      },
      {
        "id": "name",
        "displayName": "Enter Name",
        "type": "string",
        "value": "KARAN"
      },
      {
        "id": "sub",
        "displayName": "choose subjects",
        "type": "list",
        "value": ["JAVA"],
        "data": [
          {"id": "1", "dispId": "JAVA"},
          {"id": "2", "dispId": "Python"},
          {"id": "3", "dispId": "Dart"}
        ]
      }
    ];

我想展示的是下面,

根据列表,我想显示它的所有数据,即

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Enter Register No --Text_Box here--
Enter Name        --Text_Box here--

(有多少个条目具有字符串类型,我希望在文本框上显示一个文本框,它的显示名称和在该地图列表中定义的值应该显示在textbox上的示例1XYZ19AA中),

如果有n个具有类型字符串n文本框的条目,则应该显示显示名称,并且我希望输入对数据的控制。

如果列表中有3个文本框,如果用户输入全部或只有1个文本框,我应该能够唯一地访问该文本框。

问题

,如果是类型列表,您可以建议任何显示方法吗?因为列表中的元素应该有一个多选择选项?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2019-10-10 00:23:09

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ListView.builder(
  itemCount: tableValue.length,
  itemBuilder:(context, index){
    return Container(
      width: MediaQuery.of(context).size.width,
      height: MediaQuery.of(context).size.height/10,
      child: Row(
        children: <Widget>[
          Container(
             width: MediaQuery.of(context).size.width/2,
             height: MediaQuery.of(context).size.height/10,
             alignment: AlignmentDirectional.centerStart,
             child:Text(tableValue[index]['displayName'])
           ),
          Container(
             width: MediaQuery.of(context).size.width/2,
             height: MediaQuery.of(context).size.height/10,
             alignment: AlignmentDirectional.centerStart,
             child: TextField(
                decoration: InputDecoration.collapsed(
                  hintText: "blah"
                )
             )
           )
        ],
      )
    );
  }
)
票数 0
EN

Stack Overflow用户

发布于 2019-10-10 01:57:31

下面是一个示例,可以显示表中的数据,还可以看到如何访问TextFields和Checkboxs的选定值

请注意,您可能需要像这样更改tableValue的类型:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
List<Map<String, dynamic>> tableValue = [...]
Map<String, TextEditingController> controllers = {};
Set<String> checks = {};

这将是你屏幕的主体

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ListView(
  children: <Widget>[
    Column(
      children: tableValue
          .where((entry) => entry["type"] == "string")
          .map((entry) => Row(
                children: <Widget>[
                  Text(entry["displayName"]),
                  Flexible(
                    child: TextField(
                      controller: getController(entry["id"]),
                    ),
                  )
                ],
              )).toList(),
    ),
    Column(
      children: tableValue
          .firstWhere(
              (entry) => entry["type"] == "list")["data"]
          .map<Widget>(
            (data) => CheckboxListTile(
              title: Text(data["dispId"]),
              value: checks.contains(data["id"]),
              onChanged: (checked) {
                setState(() {
                  checked ? checks.add(data["id"]) : checks.remove(data["id"]);
                });
              },
            ),
          ).toList(),
    ),
    Text("Texts: ${controllers.values.map((controller) => controller.text)}"),
    Text("Checks: ${checks.map((check) => check)}"),
  ],
)

这就是如何处理TextField控制器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
TextEditingController getController(String id) {
  controllers.putIfAbsent(id, () => TextEditingController());
  return controllers[id];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58317975

复制
相关文章
如何避免 Java 中的“NullPointerException”
NullPointerException (NPE) 是 Java 中最常见的异常。此异常的原因是已知的,但在大多数情况下,开发人员更愿意忽略它并且不采取任何措施。我个人认为这种行为的原因如下:
终码一生
2022/04/15
2.9K0
如何避免 Java 中的“NullPointerException”
避开NullPointerException的10条建议
NullPointerException应该是 Java 开发中最常出现的问题,也是 Java 程序员最容易犯的错误。虽然看起来是个小错误,但带来的影响却不小,Tony Hoare(null 引用的发明者)在 2009 年说过 NPE 大约给企业造成数十亿美元的损失。在这工作半年内,我就踩了好几次 NPE 的坑。举个例子,我需要在原有逻辑上加一段代码,而新加的代码报错抛出了 NPE,同时又没做异常处理,就直接导致后面的逻辑不运行了,影响了整个原有逻辑,太恐怖了。所以大家一定要小心避开 NPE 这个坑。
草捏子
2020/08/10
2.1K0
Stack Overflow 上最火的一个问题:什么是 NullPointerException
在逛 Stack Overflow 的时候,发现最火的问题竟然是:什么是 NullPointerException(java.lang.NullPointerException),它是由什么原因导致的,有没有好的方法或者工具可以追踪它发生的原因?
帅地
2019/11/15
6460
Stack Overflow 上最火的一个问题:什么是 NullPointerException
在逛 Stack Overflow 的时候,发现最火的问题竟然是:什么是 NullPointerException(java.lang.NullPointerException),它是由什么原因导致的,有没有好的方法或者工具可以追踪它发生的原因?
田维常
2019/10/23
5450
Stack Overflow 上最火的一个问题:什么是 NullPointerException
在逛 Stack Overflow 的时候,发现最火的问题竟然是:什么是 NullPointerException(java.lang.NullPointerException),它是由什么原因导致的,有没有好的方法或者工具可以追踪它发生的原因?
沉默王二
2019/10/21
7860
避免Java应用程序中NullPointerException的技巧和最佳实践
Java中的NullPointerException是我们最经常遇到的异常了,那我们到底应该如何在编写代码是防患于未然呢。下面我们就从几个方面来入手,解决这个棘手的问题吧。
淡定的蜗牛
2019/10/29
1.1K0
Zookeeper 服务消费方 NullPointerException
所以是没有找到 HelloService 的服务提供方提供的实现类,于是回看服务提供方代码发现少加了 com.alibaba.dubbo.config.annotation 的 @Service 标签,于是补上代码:
RendaZhang
2020/11/04
4750
System.Web.NullPointerException
在.Net异步webApi中我们需要记录日志信息,需要获取客户端的ip地址,我们需要使用:HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];来获取客户端的ip地址,在调用异步方法(wait Task.Run(() =>{  }))前需要将主线程中获取的HttpContext.Current对象存至缓存(Cache)中达到多线程共享的目的。如果不是通过主线程获取HttpContext.Current对象将会报空指针异常(NullPointerException)。
指尖改变世界
2019/06/21
5950
OkHttp's NullPointerException in HttpUrl.class
今天测试在小米5.0-6.0的机型中测试发现一个空指针的异常,经过排查后发现OkHttp的请求参数不能为null,这个请求接口会上传当前机型的手机号、ip地址和其他的一些物理参数,当没有获取成功时就返回null,所以对于参数进行判空,否则就赋值为 parameter = “”;
萬物並作吾以觀復
2018/09/13
1.5K0
Java 14 :NullPointerException的处理新方式
在Java语言中,处理空指针往往是一件很头疼的事情,一不小心,说不定就搞出个线上Bug,让你的绩效考核拿到3.25。最近新出的Java14,相信大家都有所耳闻,那么今天就来看看,面对NullPointerException,Java14有哪些更好的处理方式呢?
程序猿DD
2020/04/21
1.1K0
【Java】 NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException、ArrayIndexOutOfBoundsE
今天工作中,临时Fix一个bug,一看日志“java.lang.ClassCastException: null” 相当懵逼,没有详细堆栈信息,这咋整。虽然根据上下文可以推测问题代码的大致位置,但不敢拍板啊。只好google找一下,在Stackoverflow上果然有解决办法
NaughtyCat
2020/10/09
9040
NullPointerException: element cannot be mapped to a null key
报错 java.lang.NullPointerException: element cannot be mapped to a null key 问题代码 import java.util.ArrayList; import java.util.stream.Collectors; import lombok.Builder; import lombok.Data; @Data @Builder public class S { private String a; private S
翟凤玺
2022/09/21
1.4K0
Mockito.when抛出NullPointerException
Mockito作为一款不错的单元测试mock工具,极大的提升单元测试效率,但是在使用该工具时需要注意Mockito打桩的方法参数一定不能是基础类型(boolean、int),否则使用any()的时候就会报空指针异常:
johnhuster的分享
2022/05/11
1.9K0
Exception in thread "main" java.lang.NullPointerException
1、在window操作系统上,使用eclipse开发工具从hdfs分布式文件系统上下载文件报空指针异常解决方法: log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.
别先生
2018/04/17
1.5K0
Exception in thread "main" java.lang.NullPointerException
空指针异常--java.lang.NullPointerException
苦于没有素材的时候,路上突然想起来同事说今天遇到好多调用方法走不下去,全都是空指针异常,刚写代码或者代码篇幅过多的时候,总会忘记防止空指针异常,那么就此总结下关于空指针异常,及解决方案。
疯狂的KK
2019/10/10
2.3K0
空指针异常--java.lang.NullPointerException
Hadoop 自定义writable NullPointerException
Hadoop2.2 (测试环境,不过个人感觉1.X和2.X的自定义类型应该是一致的,没做过对比)
星哥玩云
2022/06/30
2690
Hadoop 自定义writable NullPointerException
Android “getActionBar()返回NullPointerException”问题分析
通常,activity.getActionBar()返回NullPointerException原因是当前的activity没有ActionBar。从以下几个方面着手:
飞奔去旅行
2019/06/13
9630
Android “getActionBar()返回NullPointerException”问题分析
防止NullPointerException,是程序员的基本修养
如果一个Java程序到处抛出NullPointerException,那么我们可能会各种吐槽代码的质量。但是我们的项目又经常会抛出空指针异常,空指针异常必然常伴Java程序员。为此我们需要了解一些它喽,NullPointerException是Java种一个常见的RuntimeException,正如阿里的Java开发手册所说,对于Java程序员来说防止NPE是一种基本素养。今天我们盘一下NullPointerException。
无花大师
2023/04/17
8720
mybatis 并发执行时出现NullPointerException
这是mybatis依赖包OGNL 2.6.9的一个bug,可以通过升级mybatis版本到 3.3.0来解决此问题。
用户8983410
2021/09/22
7420
Java14新特性:增强NPE NullPointerException
不幸的是,如果在第2行是一个包含了多个方法调用的赋值语句(如getLocation()和getCity()),那么任何一个都可能会返回null。实际上,变量user也可能是null。因此,无法判断是谁导致了NullPointerException。
一觉睡到小时候
2020/03/31
7010

相似问题

片段中setText()上的NullPointerException

15

runOnUiThread中TextView上的NullPointerException

16

getBaseContext()上的NullPointerException

34

KeyListener上的NullPointerException

25

LazyAdapter上的NullPointerException

42
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文