我的应用开发代码中的if语句存在问题
if (Intent.resolveActivity(getPackageManager())!=null)
{
startActivity(intent);
}
错误出现在resolveActivity部分,错误如下:
非静态方法
' resolveActivity(android.content.pm.PackageManager)'无法从静态上下文中引用。
这是什么意思,我该如何解决?
感谢。
答案 0 :(得分:1)
功能" resolveActivity"是非静态的。您需要一个Intent-Instance来调用该函数。 如果您在活动中,可以使用
if (getIntent().resolveActivity(getPackageManager())!=null)
{
startActivity(intent);
}
答案 1 :(得分:0)
只需声明Intent,而不是直接从类中引用它。 像:
Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
然后
if (myIntent.resolveActivity(getPackageManager())!=null)
{
startActivity(myIntent);
}
基本上,你试图从库类中获取方法,你可以获得大多数只有常量,否则(在你的情况下 - 方法)你需要一个你挂起的对象它 - 所谓的动态参考。
希望有所帮助!