无法将参数类型'int'分配给参数字符串flutter

时间:2020-08-19 11:28:14

标签: flutter dart

我正在努力工作,我能够完美地使用dio解析我的api请求,但是在列出我的项目而不是在数据库中保存总和之后,我想显示数据库中两列的用户总和,但是我遇到了参数类型'int'无法分配给参数字符串错误,这是我的代码

? ListView.builder(
            itemCount: filteredItems.length,
            itemBuilder: (BuildContext context, int index) {
              return GestureDetector(

                onTap: () {
                 
                Navigator.of(context).pushNamed(PostDetail.routeName, arguments: filteredItems[index]);
                },
                child: Card(

                  elevation: 10,
                  child: Padding(
                    padding: const EdgeInsets.symmetric(
                        vertical: 10, horizontal: 8),
                    child: Column(
                      children: <Widget>[

                        Text(
                          filteredItems[index]['product_name'],
                          style: TextStyle(fontSize: 18),
                        ),
                        Text(
                          // here i need to display two columans from database but error appers here
         int.parse( filteredItems[index]['priceOne'])- int parse(filteredItems[index]['priceDisc']); 
                               
                                              
                        ),
                      ],
                    ),

                  ),
                ),
              );
            })

2 个答案:

答案 0 :(得分:1)

因为Text小部件需要String,所以绝对不会显示任何文本。您需要做的就是将int转换为String以显示它。这是一个示例:

 Text((int.parse(filteredItems[index]['priceOne'])- int.parse(filteredItems[index]['priceDisc'])).toString()), 

答案 1 :(得分:1)

您无法以文本显示: Text( int.parse( filteredItems[index]['priceOne'])- int parse(filteredItems[index]['priceDisc']); )

您必须写,例如:

Row(
   children: [
    Text(
filteredItems[index]['priceOne'] + ' - '),
    Text(filteredItems[index]['priceDisc'])
]
                           
  or:

          Text((int.parse(filteredItems[index]['priceOne'])- int.parse(filteredItems[index]['priceDisc'])).toString()),