繁体   English   中英

将数据列表从一个屏幕传递到第二个屏幕

[英]passing a list of data from one screen to 2nd screen

我正在将我通过 API 在第一个屏幕上调用的数据列表传递到第二个屏幕,并且我能够一次打印所有数据。 但是现在我想一个一个地使用这些数据,我不知道该怎么做......你能帮忙吗?

这是第二个屏幕-:

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

import 'Home_View.dart';




class AboutScreen extends StatefulWidget {

  final data;
  AboutScreen({Key key,@required this.data}) : super(key: key);

  @override
  _AboutScreenState createState() => _AboutScreenState(data:data);
}

class _AboutScreenState extends State<AboutScreen> {

  var data;
  _AboutScreenState({this.data});

  int i = 0;
  


  @override
  void initState() {
    super.initState();
  }


  @override
  Widget build(BuildContext context) {
    print(data.toString());   // here i am printing all data

    return Scaffold(
      body: Column(
        crossAxisAlignment: CrossAxisAlignment.center,
        children: [


          Padding(
            padding: const EdgeInsets.only(top: 150, bottom: 40),
            child: Row(
              mainAxisAlignment: MainAxisAlignment.center,
              children: [
                Card(
                  elevation: 25,
                  shape: RoundedRectangleBorder(
                    borderRadius: BorderRadius.circular(65),
                  ),
                  child: CircleAvatar(
                    child: Icon(Icons.insert_emoticon_outlined, size: 100,),
                    radius: 80,
                    foregroundColor: Colors.deepPurpleAccent,
                  ),
                ),
              ],
            ),
          ),


          Text(
            '${data[0][i.toString()]}', // here i wanted to get data individually but it's showing error
            style: TextStyle(
              fontSize: 30,
              letterSpacing: 2.5,
              fontWeight: FontWeight.bold,
            ),
          ),



          SizedBox(height: 30,),
          Text(
            'Version 2.2',
            style: TextStyle(
              fontSize: 20,
              letterSpacing: 2.5,
            ),
          ),



          SizedBox(height: 30,),
          Text(
            'Developed By  Black Console',
            style: TextStyle(
              fontSize: 20,
              letterSpacing: 2.5,
            ),
          ),



          SizedBox(height: 40,),

          FloatingActionButton(
            child: Icon(Icons.arrow_back_ios),
            backgroundColor: Colors.deepPurpleAccent,
            elevation: 16,
            onPressed: (){
              Navigator.pushReplacement(context, MaterialPageRoute(
                  builder: (context) => homeView()
              ));
            },
          ),



        ],
      ),
    );
  }
}

以下是我作为列表获得的数据-:

I/flutter ( 4689): {alternateno: [7845659877, 9865358577], coachaddress: [anand vihar, delhi, delhi, Gautam Budha nagar, noida], coachemail: [bct@gmail.com, SSG@gmail.com], coachid: [1, 2], coachname: [BCT Coaching, SSG Coaching], primary_number: [9865328899, 9898557898], userid: [1, 1]}

你能指导我吗..

您的数据变量似乎是 Map,而不是列表,因此您可以像这样访问它的值:

data['alternateno'][i]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM