Xamarin Forms Android关键事件处理页面
本文关键字:事件处理 Forms Android Xamarin | 更新日期: 2023-09-27 18:06:09
目前我正在为Android开发PCL Xamarin Forms。我现在正在处理一个通过Text_Changed事件捕获扫描数据的条目。我想知道是否有可能处理这个扫描数据的内容页上的事件。我缺少Xamarin中的KeyPress之类的东西。有人有解决办法吗?
您可以使用CustomEntry
在Forms中添加一个新类:
public class CustomEntry : Entry
{
public Action DonePressed = delegate {};
}
在你的Android项目中,添加CustomEntryRenderer:
class CustomEntryRenderer : EntryRenderer
{
private CustomEntry customEntry;
protected override void OnElementChanged (ElementChangedEventArgs<Entry> e)
{
base.OnElementChanged (e);
if (Control != null)
{
Control.ImeOptions = ImeAction.Done;
Control.EditorAction += (sender, args) => {
if (args.ActionId == ImeAction.Done) {
var entry = (CustomEntry)Element;
entry.DonePressed();
}
};
}