[英]An object reference is required for the non-static field, method, or property 'Android.Content.Intent.GetStringExtra(string)'
public override void OnCreate()
{
base.OnCreate();
//Find our audio and notificaton managers
audioManager = (AudioManager)GetSystemService(AudioService);
wifiManager = (WifiManager)GetSystemService(WifiService);
string text = Intent.GetStringExtra ("MyData") ?? "Data not available";
错误CS0120:非静态字段,方法或属性'Android.Content.Intent.GetStringExtra(string)'需要对象引用(CS0120)
我在代码的最后一行不断收到此错误。 我正在尝试将数据从二维码传递到下一个活动,就像他们在这里所做的一样
我不确定如何解决此问题,并且我尝试将其创建为静态但无法解决。
getStringExtra
是一个非静态方法。 这意味着您需要一个对象来调用它。 对于getStringExtra
,您需要一个Intent
对象来调用它,而不是类。
那么,如何获得一个意图对象呢? 在活动中,可以使用getIntent
获取传递给活动的意图。 现在有了对象,可以对返回的对象调用getStringExtra
:
var obj = getIntent();
var someString = obj.getStringExtra(someArgs);
您可以简化为
var someString = getIntent().getStringExtra(someArgs);
GetStringExtra用于在两个活动之间传递数据。 您只进行了一项活动...您是否正确使用了此功能?
此处的更多信息: https : //developer.xamarin.com/recipes/android/fundamentals/activity/pass_data_between_activity/
将数据从Activity1传递到Activity2,如下所示:
Activity1传递数据
Intent intent = new Intent(Activity1.this, Activity2.class);
intent.putExtra("key","value");
startActivity(intent);
Activity2获取数据,在Activity2 onCreate方法中编写以下代码
String data = getIntent().getStringExtra("key");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.