ListView 披露指示器按钮 - Xamarin 表单
Posted
技术标签:
【中文标题】ListView 披露指示器按钮 - Xamarin 表单【英文标题】:ListView Disclosure Indicator Button - Xamarin Form 【发布时间】:2014-10-13 15:44:29 【问题描述】:我是 Xamarin 平台的新手,我已经开始以 Xamarin 形式(跨平台)实施教程。我想知道如何实现一个附件,它是 ListView(tableView) 上的显示指示器按钮。我附上 XCode TableViewcontroller 的屏幕截图,以使我的问题更清楚。
【问题讨论】:
【参考方案1】:在 Xamarin.Forms 中,您可以使用 ViewCell 自定义列表视图行。
在链接 here 的末尾有一个关于自定义 Xamarin.Forms ListView 控件行布局的部分。
简而言之,您的 XAML 表单中将包含以下内容作为模板:-
<ListView>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ViewCell.View>
** 在此处放置自定义 Xamarin.Forms 标记以自定义列表行的显示 **
</ViewCell.View>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
您可以在中间放置任何 Xamarin.Forms 标记以实现您想要的外观。因此,也许可以使用 Grid 或 StackLayout 并自定义内部外观。
由于您使用的是 Xamarin.Forms,因此您必须创建自己的布局才能达到类似的效果。请记住,您现在的目标是多平台。如果您真的喜欢“>”外观,那么也许可以创建一个图像并添加一个 Xamarin.Forms 图像 来实现此效果?如果不编写某种自定义渲染器,我认为您无法以任何其他方式添加各种特定于平台的附件。
【讨论】:
你好皮特,这是有道理的。如何在这个 xaml 中添加图像?如果你不介意,请你写一个添加图像的小脚本。 这是一个用于处理图像的guide。以最简单的形式,您可以在 ViewCell.View 中编写也许你可以做一个工具栏项目,详情在这里http://codeworks.it/blog/?p=232
【讨论】:
你好 Corcav,我想坚持使用 ListView,我不想使用工具栏项。谢谢。【参考方案3】:我已经完成了以下任务。
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid BackgroundColor="White" Margin="10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="30"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="startIcon.png" />
<StackLayout Grid.Column="1">
<Label
Text="Binding ProductName"
Margin="8"
FontAttributes="Bold"
FontSize="Medium" />
<Label Text="Binding Quantity"
Margin="8,2,8,4"
FontSize="Small" />
</StackLayout>
<Image Grid.Column="2" Source="rightIcon.png" />
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
【讨论】:
以上是关于ListView 披露指示器按钮 - Xamarin 表单的主要内容,如果未能解决你的问题,请参考以下文章
如何对 tableview 行进行操作以及如何在其中添加添加披露指示符?