ListView是UI库在大多数现代操作系统中提供的图形屏幕控件或窗口小部件,用于以列表形式显示项目。
android.view.InflateException:二进制 XML 文件第 9 行:错误膨胀类 <unknown>
我已经研究这个问题几个小时了,类似的错误有解决方案但没有解决问题。 我在不同的活动中为多个 ListView 重用这个 XML 文件(我假设......
如何将ListView.builder的最后一个元素拖动到一定距离?
我希望ListView.builder的最后一个元素向上拉伸我设置的距离,但是BouncingScrollPhysics()允许最后一个元素几乎拉伸到屏幕中间。嗬...
ListView.builder 无法与 hive 数据库正常工作
我正在制作一个 pokemon go 应用程序,它将 pokemon 的屏幕截图作为输入,并根据它的一些属性创建一个小部件。除了 ListView.builder 之外,一切似乎都工作正常。上一页
我正在尝试检索 ListView SubItem .Text 属性。 我的 ListView 有两列:ID 和名称。我想访问特定 ID 的名称并将其存储在变量中: 字符串 nameValue = listView1.Items...
我的 Flutter 应用程序遇到布局问题。我创建了一个包含卡片小部件的 MyCardWidget。在卡片内部,我尝试使用带有 mainAxisAlign 的 Column 将其内容居中...
C# WPF - 如何使用 .IsSelected 属性以编程方式预选择 ListView 项目?
我有一个 C# WPF 应用程序,使用 ListView 基本上可以正常工作。 我的问题是: 我想在列表视图中预先选择项目。选择应该对用户可见,并且用户应该
当我将相同的属性绑定到另一个ListView时,ListView保持为空
如果我将相同的属性绑定到相同类型的另一个控件,在我的例子中绑定到 ListView,那么第一个 ListView 将填充对象,但第二个 ListView 保持为空。我和 On 一起玩...
为什么Flutter没有ListView.iterable()构造函数?
主要是为了讨论,但确实如此。 我在互联网上没有找到类似的东西,所以我想也许性能受到了一些影响,或者也许没有人没有尝试过。但如果没有,这个常量...
我在 Flutter 中创建了一个 MainScreen 类。该类的主要目的是从用户所在位置获取城市名称并获取该城市 5 天的天气预报,然后在
我想在我的ListView 中添加一个“返回顶部”按钮。我可以使用 ListView 上的 ScrollTo() 函数滚动到一个项目(即第一个项目),但我似乎无法滚动到顶部...
我已经使用非常常见的 Dismissible 模型实现了“滑动删除操作”。 但我只想构建一个类似的列表视图,但用户可以水平滑动项目(就像......
我正在尝试创建一个简单的 Todo 应用程序。首先处理用户界面,因此此时所有数据都是哑数据,而不是用户输入。 我可以让它在列表视图中正常工作,但是当我尝试使用可重新排序列表时,...
RenderFlex 子项,如何将 listview 的列和行与侧 singlechildscrollview 中的列包裹起来
在颤动中,身体部位 我有 2 个小部件:1 个 listview.builder 和 1 行,其中包含 2 列,其中有文本。 但不知道如何使用 SingleChildScrollView 和 resizeToAvoidBottomInset: tru...
我有一个路径列表,例如从“ls -R”标准输出解析为数组的列表,如何用它创建一个非常简单的树视图列表? 我还在快速学习,我不知道如何
WPF ListView 使用 INotifyPropertyChanged 自动更新
我的 UserControl 中有一个名为 ChosenListView 的 ListView。在我的 UserControl 的构造函数中,我将 DataContext 设置为我的 ViewModel,其中包括元素的 ObservableCollection(称为 Elements)...
我怎样才能控制wrapanel,这样如果我删除了一个项目,顺序就不会改变
在列表视图中,我使用 Wrappanel 作为 ItemsPanelTemplate 在 listview 中,我使用 Wrappanel 作为 ItemsPanelTemplate <ListView ItemsSource="{Binding TodoItemViewModels}" ScrollViewer.VerticalScrollBarVisibility="Disabled" Drop="Card_Drop" AllowDrop="True" DragLeave="Card_DragLeave" IsEnabled="{Binding Disable, ElementName=root}" Background="Green"> <ListView.ItemsPanel> <ItemsPanelTemplate> <WrapPanel Margin="0" Orientation="Vertical" /> </ItemsPanelTemplate> </ListView.ItemsPanel> <!-- Displaying Cards in CardCollection View --> <ListView.ItemTemplate> <DataTemplate> <Border BorderThickness="2" BorderBrush="BlanchedAlmond" Opacity="1" Background="BlanchedAlmond" Width="25" Height="30" MouseMove="Card_MouseMove" CornerRadius="5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> <TextBlock Text="{Binding Cardstr}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Foreground="{Binding Cardclr}" Background="BlanchedAlmond" /> </Border> </DataTemplate> </ListView.ItemTemplate> </ListView> 我怎样才能修复Listview,所以如果我删除一个项目,它的位置将会有一个空槽,而不是像下面的图片那样重新排列列表: 我尝试了Wrapanel和Gridview都无法正常工作。 我不想在网格中逐个单元插入,因为这会使程序变得复杂 您不应移除卡,而应将其替换为代表空插槽的另一个对象。 例如,您可以向包含 IsEmpty 和 Cardstr 属性的类添加 Cardclr 属性,然后使用 DataTemplateSelector 基于此属性选择适当的模板: public class CustomTemplateSelector : DataTemplateSelector { public DataTemplate CardTemplate { get; set; } public DataTemplate EmptyTemplate { get; set; } public override DataTemplate SelectTemplate(object item, DependencyObject container) { var obj = item as YourClass; if (obj != null && obj.IsEmpty && EmptyTemplate != null) return EmptyTemplate; return CardTemplate; } } XAML:: <ListView ItemsSource="{Binding TodoItemViewModels}" ScrollViewer.VerticalScrollBarVisibility="Disabled" Drop="Card_Drop" AllowDrop="True" DragLeave="Card_DragLeave" IsEnabled="{Binding Disable, ElementName=root}" Background="Green"> <ListView.Resources> <DataTemplate x:Key="cardTemplate"> <Border BorderThickness="2" BorderBrush="BlanchedAlmond" Opacity="1" Background="BlanchedAlmond" Width="25" Height="30" MouseMove="Card_MouseMove" CornerRadius="5" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> <TextBlock Text="{Binding Cardstr}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Foreground="{Binding Cardclr}" Background="BlanchedAlmond" /> </Border> </DataTemplate> <DataTemplate x:Key="emptyTemplate"> <Border> <TextBlock>empty...</TextBlock> </Border> </DataTemplate> </ListView.Resources> <ListView.ItemTemplateSelector> <local:CustomTemplateSelector CardTemplate="{StaticResource cardTemplate}" EmptyTemplate="{StaticResource emptyTemplate}"/> </ListView.ItemTemplateSelector> <ListView.ItemsPanel> <ItemsPanelTemplate> <WrapPanel Margin="0" Orientation="Vertical" /> </ItemsPanelTemplate> </ListView.ItemsPanel> </ListView>
在 Flutter 中调用 notificationListner() 后消费者无法更新
我有一个带有 ChangeNotifer 的课程。当我调用此类中的方法时,我希望更新列表视图。 这是课程: 带有 ChangeNotifier 的 WorkoutProvider 类 { 列表 我有一堂课是 with ChangeNotifer。当我调用此类中的方法时,我希望更新列表视图。 这是课程: class WorkoutProvider with ChangeNotifier { List<Exercise> _workoutList = <Exercise>[]; ///constructor WorkoutProvider(); ///get&set List<Exercise> get workout => _workoutList; set workout(List<Exercise> value) { _workoutList = value; } ///removing an exercise to the list void removeExercise(Exercise exercise) { _workoutList.remove(exercise); print("deleting"); notifyListeners(); } } 这是列表视图: myPro = Provider.of<WorkoutProvider>(context); body:Consumer<WorkoutProvider>( builder: (BuildContext context, WorkoutProvider value, Widget? child) { print("building cons"); return ListView.builder( padding: EdgeInsets.symmetric(horizontal: 30, vertical: 10), itemCount: value.workout.length, itemBuilder: (context, index) => Container( margin: EdgeInsets.symmetric(vertical: 3), child: exerciseCard(value.workout.elementAt(index))), ); }, ), /// used to delete the exercise from the list of exercises Widget buildDeleteExerciseBt(Exercise delExercise) { return IconButton( onPressed: (){ myPro.removeExercise(delExercise); }, icon: Icon( Icons.delete, color: Colors.red, )); } 检查后,它正在从课堂上删除练习,但 UI 没有更新。 这里是提供商的注册: Future<void> main() async { GlobalContextService.navigatorKey = GlobalKey<NavigatorState>(); WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); runApp( MultiProvider( providers: [ Provider<WorkoutProvider>(create: (_) => WorkoutProvider()), ], child: MaterialApp( debugShowCheckedModeBanner: false, routes: { '/' : (context) => AlreadyLoggedChecker(), '/login-screen': (context) => LoginScreen(), '/workout-review' : (context) => WorkoutReviewScreen(), '/create-training' : (context) => TrainingCreateScreen(), }, initialRoute: '/', ), ), ); } 我尝试添加一些 print(),这样当调用具有 notificationlistners() 的方法时,消费者就不会构建。 显然,在 ChangeNotifierProvider 中注册提供商时,我应该使用 Provider 而不是 main。
如何让这个官方 Flutter ListView 示例在 iOS 上滚动?
我想在 Flutter 应用程序中创建一个可滚动的 ListView。我尝试复制本教程中使用 ListView 的示例代码。我修改了项目列表,使其比屏幕长。是
自定义 ListView 适配器中的 ImageButton
我在自定义列表视图中的两个图像按钮时遇到一些问题。我不是 Android 大师,所以我遵循了一些关于自定义适配器的教程。我想要的是一个行列表,每一行都有......
如何防止用户使用 ListView 控件调整 GridViewColumns 的大小?