首页 > 解决方案 > Flutter DropdownSearch 覆盖在 ReorderableListView 中的位置不正确

问题描述

我正在开发一个 Flutter 网络应用程序。我正在尝试将一个DropdownSearch小部件放入ReorderableListView. 但是当我单击DropdownSearch小部件以显示菜单时,它的位置不正确。它应该在下方,但它出现在左上角。

这是重现该行为的最小代码:

main.dart

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

void main() {
  runApp(MyWidget());
}

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Center(
          child: SizedBox(
            height: 400,
            width: 400,
            child: ReorderableListView.builder(  // <- Replace with `ListView.builder` and it works fine
              itemBuilder: (_, index) {
                return DropdownSearch<String>(
                  mode: Mode.MENU,
                  key: Key('$index'),
                  enabled: true,
                  showSearchBox: true,
                  selectedItem: 'Option 1',
                  items: [
                    'Option 1',
                    'Option 2',
                  ],
                );
              },
              itemCount: 20,
              onReorder: (a, b) {},
              buildDefaultDragHandles: false,
            ),
          ),
        ),
      ),
    );
  }
}

这是我单击一个字段时得到的结果(以蓝色突出显示) 在此处输入图像描述

预期的行为是这个图像(用 aListView.builder而不是 获得ReorderableListView.builder):

在此处输入图像描述

我错过了什么,如何解决?

标签: flutterdartdrop-down-menuflutter-webreorderable-list

解决方案


推荐阅读