![](/img/trans.png)
[英]Entry Custom Renderer(add all borders for Android) in Xamarin.Forms
[英]Why is Setting ImeOptions to Next in custom renderer of Xamarin.forms not taking me to next field in Android
我在Xamarin.Forms的应用程序中有一个包含一些字段的表单。 我需要在android软键盘上提供文本“下一步”,点击“下一步”时,它应该带我进入下一个字段。
我在customRenderer中的代码:
Control.ImeOptions = Android.Views.InputMethods.ImeAction.Next;
Control.SetImeActionLabel("Next",Android.Views.InputMethods.ImeAction.Next);
这会将小键盘上的文本设置为“下一步”,但不会带我进入下一个字段。
我还尝试在xaml.cs的OnAppearing()中编写一些代码:
entryOne.Completed+= (object sender, EventArgs e) =>
{entryTwo.Focus(); };
即使这样也不起作用。
下面的代码还声称在android软键盘按钮上显示“ Whatever”,但它显示了ImeAction的枚举值,在以下情况下为“ Next”:
Control.SetImeActionLabel("Whatever",Android.Views.InputMethods.ImeAction.Next);
Xamarin.Forms Entry
提供此功能,您可以使用属性ReturnType
设置键盘,并使用ReturnCommand
编写代码,您要重点关注单击该条目。
在您的xaml中:
<Entry x:Name="txtUserName"
ReturnCommand="{Binding loginCompleted}"
ReturnType="Next"/>
<Entry x:Name="txtPassword"/>
在您的视图模型中:
public ICommand loginCompleted
{
get { return new Command(loginCompletedEvent); }
}
/// <summary>
/// Event for making the keyboard focus on password Entry
/// </summary>
private void loginCompletedEvent()
{
Entry entryPassword = m_view.FindByName<Entry>("txtPassword");
entryPassword.Focus();
}
希望这能解决您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.