3 listview xamarin.ios xamarin xamarin.forms
所以令我惊讶的是,我没有在网络上找到任何关于这个特定问题的内容.我正在尝试将listview分隔符插入为全宽.我发现这个文档的实现代码如下,在这里.但是我不清楚如何为列表视图执行此操作?我正在使用Xamarin Forms listview,尝试在iOS上完成此操作.我想我必须编写一个自定义渲染器,因为在listview的表单上没有(公开暴露的)属性.
这是我在列表视图中发生的好照片,尽管显示的图像来自关于tableview的SO问题,而不是listview,但问题似乎是相同的.
我设法使用自定义渲染器使列表视图分隔符全宽.
在iOS 11上测试过.
[assembly: ExportRenderer(typeof(CustomListView), typeof(CustomListViewRenderer))]
namespace MasterDetailNav1.iOS.CustomRenderers
{
public class CustomListViewRenderer : ListViewRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<ListView> e)
{
base.OnElementChanged(e);
if (Control != null)
{
Control.SeparatorInset = UIEdgeInsets.Zero;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在它已内置于 Xamarin Forms 3.0 中:
SeparatorStyle只需将Default或设置FullWidth为您的ListView(请注意,这是特定于 iOS 的平台,Android 默认情况下为全宽):
<ListView ios:ListView.SeparatorStyle="FullWidth"/>
Run Code Online (Sandbox Code Playgroud)
答案取决于您使用的是 Xamarin Forms 3.0+ 还是早期版本。
ListViewXamarin Forms 3.0 及更高版本上的A现在公开一个SeparatorStyle可以设置为SeparatorStyle枚举值的属性,或者Default或FullWidth。这是通过此 PR提供的。
确保将该SeparatorStyle属性设置FullWidth为 以获得所需的效果。
您是正确的,没有通过 Xamarin Forms 公开的属性ListView(最终在 iOS 上呈现为 aUITableView)来更改分隔符宽度。如果您想自己更改分隔符,则必须求助于自定义渲染器并实现您在其他问题中找到的内容。
作为解决方法,您可以禁用分隔符可见性,然后添加BoxView1 高度来模拟全宽分隔符。
| 归档时间: |
|
| 查看次数: |
2100 次 |
| 最近记录: |