한 화면에서 세로 및 가로 스크롤 가능

2187 단어 스크롤Flutter

전제


  • Flutter 2.2.0 stable

  • 세로 및 가로 스크롤을 수행하려면


  • 이 Widget을 사용합니다.
  • CustomScrollView
  • SliverChildBuilderDelegate


  • 주의점


  • 리스트 아이템의 높이를 지정할 필요가 있는 것 같습니다.
  • CustomScrollView를 SizedBox로 래핑
  • 만약 height: 50, 라고 지정하고 있습니다



  • 이런 느낌이 듭니다





    만든 Widget


  • 세로 50 개
  • 가로 50개
  • 
    class MultiCustomScrollView extends StatelessWidget {
      const MultiCustomScrollView({Key? key}) : super(key: key);
    
    
      @override
      Widget build(BuildContext context) {
        return Expanded(
          child: CustomScrollView(
            scrollDirection: Axis.vertical,
            slivers: [
              SliverList(
                delegate: SliverChildBuilderDelegate(
                  (BuildContext context, int verticalIndex) {
                    return SizedBox(
                      height: 50,
                      child: CustomScrollView(
                        scrollDirection: Axis.horizontal,
                        slivers: [
                          SliverList(
                            delegate: SliverChildBuilderDelegate(
                              (BuildContext context, int horizontalIndex) {
                                return SizedBox(
                                  height: 50,
                                  child: Padding(
                                    padding: const EdgeInsets.all(8.0),
                                    child: Text(
                                      'test${(verticalIndex + 1) * (horizontalIndex + 1)}',
                                    ),
                                  ),
                                );
                              },
                              childCount: 50,
                            ),
                          ),
                        ],
                      ),
                    );
                  },
                  childCount: 50,
                ),
              ),
            ],
          ),
        );
      }
    }
    
    

    이상입니다.

    좋은 웹페이지 즐겨찾기