gpt4 book ai didi

带有 2 行标签的 Xamarin.Forms ListView ?

转载 作者:行者123 更新时间:2023-12-02 07:12:17 24 4
gpt4 key购买 nike

我正在将 MonoTouch.Dialog 应用转换为 Xamarin.Forms

我在 ListView 中有一个单元格,它有一个“详细信息”行,应该有 2 行长,并且应该在之后截断尾部。

        var lblDetail = new Label
{
LineBreakMode = LineBreakMode.TailTruncation,
Text = "a really long string that should show 2 lines then ..."
};

如何设置“Lines = 2”之类的内容

最佳答案

我用自定义渲染器解决了这个问题

这是我的 xaml(在我的 pcl 项目中)

<ListView ItemsSource="{Binding Cards}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid Padding="10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding Icon}"/>
<customRenderers:MultiLineLabel Text="{Binding Summary}"
Grid.Column="1"/>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>

</ListView>

这是我的MultiLineLabel

public class MultiLineLabel : Label
{
}

这是 iOS 的渲染器:

[assembly: ExportRenderer(typeof(MultiLineLabel), typeof(MultiLineLabelRenderer))]
namespace NameSpace.iOS.Renderers
{
public class MultiLineLabelRenderer : LabelRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Label> e)
{
base.OnElementChanged(e);
if (Control != null)
{
Control.LineBreakMode = UILineBreakMode.TailTruncation;
Control.Lines = 3;
}
}
}
}

关于带有 2 行标签的 Xamarin.Forms ListView ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27628906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com