C# StartActivityForResult未在ActivityResult上点火
我正在用C语言编写一个Android程序,使用Xamarin,通过调用条形码扫描仪应用程序扫描条形码,然后对照web服务检查代码 但是我无法从条形码扫描仪上得到结果。该应用程序似乎正在正确启动和结束,但OnActivityResult方法未启动 这是我的密码:C# StartActivityForResult未在ActivityResult上点火,c#,android,xamarin,C#,Android,Xamarin,我正在用C语言编写一个Android程序,使用Xamarin,通过调用条形码扫描仪应用程序扫描条形码,然后对照web服务检查代码 但是我无法从条形码扫描仪上得到结果。该应用程序似乎正在正确启动和结束,但OnActivityResult方法未启动 这是我的密码: namespace AndroidApplication1 { [Activity(Label = "AndroidApplication1", MainLauncher = true, Icon = "@drawable/icon")]
namespace AndroidApplication1
{
[Activity(Label = "AndroidApplication1", MainLauncher = true, Icon = "@drawable/icon")]
public class Activity1 : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
//Start Barcode Scanner program
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
//intent.PutExtra("com.google.zxing.client.android.SCAN.SCAN_MODE", "ONE_D_MODE");
StartActivityForResult(intent, 0);
}
public void OnActivityResult(int requestCode, int resultCode, Intent data)
{
}
}
}
我尝试过各种方法,比如在OnActivityResult小写中使用“O”和取消对intent.PutExtra的注释等
有人知道怎么回事吗
James更改方法,使其覆盖基本活动类: 您要扩展的Activity类很可能包含如下虚拟方法:
protected virtual void OnActivityResult(int requestCode, int resultCode, Intent data)
{
}
您当前正在隐藏底层的虚拟方法,并且您的方法将永远不会像现在这样受到攻击。我是Android的真正新手,因此您可以更具体一些吗?如果我用那个方法替换OnActivityResult方法或添加它,它会说没有合适的方法可以重写。很抱歉,如果这个回答一开始看起来很简短;我还没做完就按了回车键,明白了,谢谢!这也是第二个结果代码需要为result类型,因此:受保护的override void OnActivityResultint请求代码、结果结果代码、意图数据
protected virtual void OnActivityResult(int requestCode, int resultCode, Intent data)
{
}