как ссылаться на список списка в дротик / флаттер - PullRequest
0 голосов
/ 16 апреля 2020

Я пытаюсь разработать учебное приложение, в котором есть предмет, на основе выбора пользователем предмета есть глава, и в каждой главе есть лекция и, наконец, видеолекция для этой лекции.

Следовательно, у меня есть список предмета, на экране предмета, в зависимости от того, какой предмет он выбирает, отображается соответствующий новый экран с списком глав ... пока здесь все хорошо ... не зависимо от главы, которую я должен создайте следующий экран, показывающий список лекций в этой главе - здесь он подвержен ошибкам. Я пытался использовать список из списка, но это работает только для предмета главы - пост, что третье измерение не связано должным образом ... ниже несколько вариантов, которые я пытался ...

Для информации, я использую Navigation.pu sh для передачи индексированного массива на следующий экран. ниже приведен код, который я использую на данный момент ... Пожалуйста, предложите, что мне делать ...

    void whenPressed(moredetails) {
setState(() {
  Navigator.push(
    context,
    MaterialPageRoute(builder: (BuildContext context) => ChapterHome(pass: moredetails),
  ),
  );
});

}

    return FlatButton(
            onPressed: () => whenPressed (lect[0][index+1]),
            padding: EdgeInsets.all(10.0),
            child: Card(
              color: Colors.purple,
              shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(25.0)),
              child: Container(
                child: Center(
                  child: Text(
                    '${lect[0][0][index].entry}',
                    style: TextStyle(color: Colors.white, fontSize: 20.0),

Список выглядит следующим образом. ..

    final List<details> course =[details('Maths'), details('Physics')];

    final List<List<details>> chapters = [course, mathsChapters, physicsChapters];

    final List<List<details>> lectures = [mch1Lectures, pch1Lectures];

    final List<List<List<details>>> lect =[chapters, lectures];

    final List<details> mch1Lectures = [ details ('m 1'), details ('m  2'),details ('m  3'),details ('m  4'), details ('m  5')];

    final List<details> pch1Lectures = [ details ('p  1'), details ('p  2'),details ('p  3'),details ('p  4')];

    final List<details> mathsChapters = [ details ('Maths  1'), details ('Maths  2'),details ('Maths  3'),details ('Maths  4'), details ('Maths  5')];

    final List<details> physicsChapters = [ details ('Physics  1'), details ('Physics  2'),details ('Physics  3'),details ('Physics  4')];

    final List<CourseArray> subjects = [ CourseArray('Maths', mathsChapters), CourseArray('Physics', physicsChapters)];
...