Put pageview inside listview builder

Viewed 54

I am working on a little app were i am putting pageview inside listview but the pageview is not scrolling. Here is my code:

PageView.builder(
    scrollDirection: Axis.horizontal,
    controller: _controller,
    itemCount: _pages.length,
    itemBuilder: (BuildContext context, int index) {
      return GestureDetector(
        child: _pages[index % _pages.length],
        onTap: (){
          showDialog(
              context: context,
              builder: (_) => photoView(images: widget.imageUrls,
                initialPage: index, key: UniqueKey(),));
        },
      );


    },
    onPageChanged: (int p) {
      setState(() {
        page = p;
      });
    },
  ),
1 Answers
child: PageView.builder(
                  controller: page,
                  itemCount: verseChapter.length + 1,
                  physics: chapterNumber == 1
                      ? const RightBlockedScrollPhysics()
                      : const ScrollPhysics(),
                  itemBuilder: (context, key) {
                    return ListView.builder(
                      itemCount: verse.length,
                      shrinkWrap: true,
                      itemBuilder: (context, index) {
                        return InkWell(
                          onTap: () {
                            int i = 0;
                            toggleSelection();
                            setState(() {
                              highlightIndex[i] = -1;
                              showMenu = false;
                              i++;
                            });

                            print(setVerse);
                            print(setPlace);
                          },
                          onLongPress: () {
                            print(highlightIndex);
                            setState(() {
                              highlightIndex.add(index);

                              showMenu = true;
                              setPlace = '${taDetails[index]}';
                              setVerse =
                                  '${(index + 1).toString()}. ${verse[index].toString()}';
                              backupVerse = verse[index];

                              bookmarkVerse.add(verse[index].toString());
                              print(bookmarkVerse);
                            });
                          },
                          child: Container(
                            padding:
                                EdgeInsets.all(ComponentSize.paddingall),
                            color: highlightIndex.contains(index)
                                ? Colors.grey
                                : _appcolor,
                            child: SizedBox(
                              child: ListTile(
                                leading: Text(
                                  (index + 1).toString(),
                                  style: TextStyle(color: _fontcolor),
                                ),
                                title: Text(verse[index].toString(),
                                    style: TextStyle(
                                        color: _fontcolor,
                                        height: 1.4,
                                        fontSize: fontSized,
                                        fontFamily: language == 'Tamil'
                                            ? 'TamlBible_001'
                                            : 'Roboto')),
                              ),
                            ),
                          ),
                        );
                      },
                    );
                  },
                  onPageChanged: (int chapter) {
                    if (chapterNumber == 1) {
                      setState(() {
                        versePrevious = true;
                        verseNext = false;
                      });
                    } else {
                      if (chapterNumber > 1) {
                        setState(() {
                          versePrevious = false;
                          verseNext = false;
                        });
                      }
                    }

                    setState(() {
                      chapterNumber = chapter;
                    });

                    verseDetails(chapterNumber);
                  },
                ),
Related