我需要显示一堆设置,想知道是否可以在表格视图中隐藏行分隔符。我发现很少有解决方案,但都没有用。 我尝试在android中使用渲染器,并将控件分隔符设置为0或-1,但是什么也没有。
例如 https://forums.xamarin.com/discussion/76380/seperator-lines-in-tableview
是否可以隐藏分隔线?
答案 0 :(得分:0)
您可以尝试以下代码:
MyTableView.cs
public class MyTableView: TableView
{
public static readonly BindableProperty SeperatorVisibleProperty =
BindableProperty.Create("SeperatorVisible", typeof(SeparatorVisibility),
typeof(MyTableView), SeparatorVisibility.Default);
public SeparatorVisibility SeperatorVisible
{
get { return (SeparatorVisibility)GetValue(SeperatorVisibleProperty); }
set { SetValue(SeperatorVisibleProperty, value); }
}
}
Android中的MyTableViewRenderer.cs
[assembly: ExportRenderer(typeof(MyTableView), typeof(MyTableViewRenderer))]
namespace MyTableViewApp.Droid
{
public class MyTableViewRenderer: TableViewRenderer
{
public MyTableViewRenderer(Context context) : base(context)
{
}
protected override void OnElementChanged(ElementChangedEventArgs<TableView> e)
{
base.OnElementChanged(e);
if (Control == null)
return;
//var listView = Control as global::Android.Widget.ListView;
//listView.Divider = new ColorDrawable(Android.Graphics.Color.Transparent);
//listView.DividerHeight = 0;
var listView = Control as global::Android.Widget.ListView;
listView.Divider.SetTint(Color.Transparent.GetHashCode());
listView.SetHeaderDividersEnabled(false);
listView.Divider = null;
listView.DividerHeight = 0;
}
}
}