【发布时间】:2017-06-24 07:49:49
【问题描述】:
我需要从用户那里获取文本作为输入。我使用编辑器是因为输入可以是多行的。但是,当用户聚焦时,会显示键盘上的编辑器完成按钮。我需要删除它。当我使用条目而不是编辑器时,完成按钮不显示,但我需要将输入作为多行。我可以删除完成按钮还是可以将条目用作多行?
【问题讨论】:
标签: xamarin.forms keyboard editor xamarin.forms.entry
我需要从用户那里获取文本作为输入。我使用编辑器是因为输入可以是多行的。但是,当用户聚焦时,会显示键盘上的编辑器完成按钮。我需要删除它。当我使用条目而不是编辑器时,完成按钮不显示,但我需要将输入作为多行。我可以删除完成按钮还是可以将条目用作多行?
【问题讨论】:
标签: xamarin.forms keyboard editor xamarin.forms.entry
我为 ios 创建了一个自定义编辑器渲染器并成功删除了完成按钮。这是我的代码:
[assembly: ExportRenderer(typeof(CustomEditor), typeof(CustomEditorRenderer))]
namespace ProjectName.iOS
{
public class CustomEditorRenderer : EditorRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Editor> e)
{
base.OnElementChanged(e);
this.Control.InputAccessoryView = null;
}
}
}
【讨论】:
“完成”按钮是默认行为。检查文档: https://developer.xamarin.com/recipes/cross-platform/xamarin-forms/controls/choose-keyboard-for-entry/
您可以通过在渲染器中使用 ImeOptions 来进行一些自定义:Changing keyboard's ImeOptions of Xamarin.Forms.Entry in custom renderer not working on Android
【讨论】: