是否可以在选取器控件中使用省略号截断长文本。我已经创建了一个自定义渲染器来设置fontsize而没有边框,以便获得以下结果。
还尝试设置Control.Ellipsize = TextUtils.TruncateAt.End;
但没有任何反应
[assembly: ExportRenderer(typeof(NoBorderPicker), typeof(CustomPicker))]
namespace Prj.Droid.Renderers
{
public class CustomPicker : PickerRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
{
base.OnElementChanged(e);
if (Control != null)
{
var customBG = new GradientDrawable();
customBG.SetColor(Android.Graphics.Color.Transparent);
customBG.SetCornerRadius(3);
Control.SetBackground(customBG);
Control.Ellipsize = TextUtils.TruncateAt.End;
var custdatepicker = (NoBorderPicker) this.Element;
this.Control.TextSize = (float)custdatepicker.FontSize;
}
}
}
}
答案 0 :(得分:5)
现在,我确信Control.SetSingleLine(true);
可以正常工作。
答案 1 :(得分:1)
如果您使用的是自定义渲染器,则可以进行不正确的继承。
使用 Xamarin.Forms.Platform.Android.AppCompat.PickerRenderer 而不是 Xamarin.Forms.Platform.Android.PickerRenderer
致https://www.damirscorner.com/blog/posts/20201204-CustomPickerRendererOnAndroid.html