xamarin - 表单的自定义 RecyclerView
问题描述
我在滚动查看器中显示大量视觉元素时遇到问题,我已经尝试了所有可能的方法来实现相同的方法,或者使用第 3 方水平列表视图(找不到具有可变列/元素宽度)或使用旋转的原生列表视图(给出奇怪的结果)。
给出结果的唯一方法是通过停靠在滚动查看器中的堆栈布局,我从代码中填充该堆栈布局。现在的问题是所有元素都被渲染,即使它们没有显示,所以它使应用程序要么非常慢。
我想过有一个recyclerview(存在于本机android中),但我找不到它形成的方法,因为它只存在于android中。现在有人可以帮我吗?也许是一个自定义视图,它在 android 上使用回收器视图和任何类似的方法,或者可能是 iOS 上的常规滚动查看器?
提前致谢。
更新#1
我可以使用此代码执行旋转列表视图选项-受此答案的启发-
<RelativeLayout>
<ListView ItemsSource="{Binding Entries}" Rotation="-90" HasUnevenRows="True"
RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0.5, Constant=-37}"
RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=-0.5, Constant=37}"
RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=1}"
RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<BoxView Rotation="90" BackgroundColor="Beige" WidthRequest="200"/>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</RelativeLayout>
但是我永远不能让这个盒子视图填充while单元格,总是有空白空间-盒子视图是一个占位符而不是其他自定义控件-。
有没有一种方法可以使框视图始终填充整个单元格高度并将其填充并扩展为它的WidthRequest属性-根据以后的绑定将是动态的-?
解决方案
我通过使用带有自定义模板的列表视图找到了解决此类问题的方法,在其中我使用了几个滚动视图并将它们的移动链接在一起。在这里参考我的回答:如何让多个列表视图一起滚动?
推荐阅读
- spring - 如何验证 DTO 字符串字段是指定值之一
- r - 在 R 中使用突变
- c# - InvalidOperationException:方案已存在:Identity.Application
- kotlin - 暂停直到 StateFlow 达到所需状态之一并返回结果
- floating-point - ARM Cortex-A9 NEON 和 VFP
- mysql - 将一个表与多个表相关联的数据库模式
- reactjs - 编辑对象状态数组
- maven - 如何在 Maven 构建的詹金斯管道中增加百分比代码覆盖率
- android - 无法在对话框片段中的文本视图上设置文本
- amazon-web-services - 我的弹性搜索批量索引器未正确关闭