我是Xamarin Android的初学者,我必须测试手机Honeywell Dolphin CT 50的扫描仪。
我的项目编译得很好,我很好地从蜂蜜中添加了jar库,但我现在的问题是一些Java代码。
我无法将其翻译成C#!
以下是代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// create the AidcManager providing a Context and a
// CreatedCallback implementation.
AidcManager.create(this, new CreatedCallback() {
@Override
public void onCreated(AidcManager aidcManager) {
manager = aidcManager;
barcodeReader = manager.createBarcodeReader();
}
});
ActivitySetting();
}
我的问题是翻译方法的第二个参数:
AidcManager.create => new CreatedCallback() ?
如何将其转换为C#?
答案 0 :(得分:1)
你可以使用lambda,但只要有多个方法可以覆盖,就会崩溃。一个单独的类是处理一般情况的方法:
public virtual void onCreate(Bundle savedInstanceState)
{
base.onCreate(savedInstanceState);
ContentView = R.layout.activity_main;
// create the AidcManager providing a Context and a
// CreatedCallback implementation.
AidcManager.create(this, new CreatedCallbackAnonymousInnerClassHelper());
ActivitySetting();
}
private class CreatedCallbackAnonymousInnerClassHelper : CreatedCallback
{
public override void onCreated(AidcManager aidcManager)
{
manager = aidcManager;
barcodeReader = manager.createBarcodeReader();
}
}