你好,我剛剛在一個Android項目中開始了Xamarin,並且我在edittext的按鍵時遇到了一個問題。在我的第一個Edittext上輸入Enter時,它將焦點放在Edittext(txtArtikel)上,但是這個Edittext的按鍵被觸發並跳轉到第三個Edittext。所以它只用一個Enter鍵即可跳過我的第二個Edittext。誰能幫我?Xamarin Android Edittext Keypress也執行
txtArtikel.KeyPress += txtArtikelPress;
private void txtArtikelPress(object sender, View.KeyEventArgs e)
{
e.Handled = false;
if (e.KeyCode == Keycode.Enter)
{
txtAantal.RequestFocus();
}
}
編輯
我仍然與按鍵時工作,現在正在尋找一個進入和退出。當txtWerf爲空時,它跳轉到txtArtikel,但是當它包含文本時,它會轉到txtAantal。
private void txtWerfPress(object sender, View.KeyEventArgs e)
{
if (e.KeyCode == Keycode.Enter && e.Event.Action == KeyEventActions.Down)
{
if (txtWerf.Text.Trim() != "")
{
if (txtArtikel.RequestFocus())
e.Handled = true;
}
}
else
e.Handled = false;
}
private void txtArtikelPress(object sender, View.KeyEventArgs e)
{
if (e.KeyCode == Keycode.Enter && e.Event.Action == KeyEventActions.Down)
{
if (txtArtikel.Text.Trim() != "")
{
if (txtAantal.RequestFocus())
e.Handled = true;
}
}
else if (e.KeyCode == Keycode.Escape && e.Event.Action == KeyEventActions.Down)
{
if (txtWerf.RequestFocus())
e.Handled = true;
}
else
Scanner.CheckForScannedData(sender, ref e);
e.Handled = false;
}
private void txtAantalPress(object sender, View.KeyEventArgs e)
{
if (e.KeyCode == Keycode.Escape && e.Event.Action == KeyEventActions.Down)
{
if (txtArtikel.RequestFocus())
e.Handled = true;
}
else
e.Handled = false;
}
thx爲您的答案。我嘗試了imeOptions,但是使用actionNext它只是在同一個editText中進入一個新行。當事件處理程序被移除時也會發生這種情況。在Keydown中,我還需要檢查editText是否包含任何文本。 – NiAu