Xamarin ViewCell:如何关闭>触摸动作?

时间:2017-02-08 23:15:37

标签: c# xamarin xamarin.forms

ViewCellTableView一起使用时,它会显示右箭头>(以红色圈出)并且可以触摸整个单元格 - 我想选择它并从中滑动新页面从右到左“深入细节”。

有人可以建议如何禁用>的显示吗? 看起来ViewCell.IsEnabled = false关闭了触摸操作。

enter image description here

我的类中的一些代码派生自ContentPage,用于创建表格部分:

public class SamplePage : ContentPage
{

    public SamplePage()
    {
        var gridLengthStar = new GridLength(1, GridUnitType.Star);

        // GRIDSAMPLE CODE
        var gridSample = new Grid
        {
            RowDefinitions =
            {
                new RowDefinition {Height = GridLength.Auto},
                new RowDefinition {Height = GridLength.Auto}
            },
            Padding = new Thickness(20, 20, 20, 20),
            ColumnDefinitions =
            {
                new ColumnDefinition {Width = gridLengthStar},
                new ColumnDefinition {Width = gridLengthStar}
            },
        };

        gridSample.Children.Add ( new Label() { Text = "Data1" }, 0, 0);
        gridSample.Children.Add ( new Label() { Text = "Data2" }, 1, 0);

        gridSample.Children.Add ( new Label() { Text = "Data3" }, 0, 1);
        gridSample.Children.Add ( new Label() { Text = "Data4" }, 1, 1);

        var tableView = new TableView
        {
            HasUnevenRows = true,
            Intent = TableIntent.Form,
        };

        tableView.Root = new TableRoot
        {
            new TableSection("SECTION TITLE")
            {
                (new ViewCell {View = gridSample, IsEnabled =  false})
            }
        };

        Content = new StackLayout()
            {
                Children = { tableView } ,
                Orientation = StackOrientation.Vertical,
                VerticalOptions = LayoutOptions.Start,
                Spacing = 10
            };

    }
}

1 个答案:

答案 0 :(得分:1)

如果设置

,该箭头可以在iOS上显示
Accessory = UITableViewCellAccessory.DisclosureIndicator;
在你的UITableViewCell中

Xamarin.Forms通常不会设置此项,因此不应显示箭头。如果它存在,那么你有一些渲染器,效果或其他组件在iOS代码中设置它。