-1
在函数SetIntent中,我初始化了对象inputIntent,inputIntent和emailIntent都是相同的指针。
为什么obj emailIntent为null并显示“Error”?从 Utility.SetIntent(getApplicationContext(),emailIntent,myindex)方法为什么obj emailIntent为空?
Intent emailIntent=null;
Utility.SetIntent(getApplicationContext(),emailIntent, myindex);
if (emailIntent==null){
Toast.makeText(getApplicationContext(),"Error" ,Toast.LENGTH_SHORT).show();
}
public static final String MyIntent=Intent.ACTION_SEND_MULTIPLE;
public static final String MySetType="image/*";
public static void SetIntent(Context mycontext, Intent inputIntent, int index) {
inputIntent = new Intent(MyIntent);
inputIntent.setType(MySetType);
PackageManager pm = mycontext.getPackageManager();
List<ResolveInfo> emailers = pm.queryIntentActivities(inputIntent, 0);
int dbIndex=index-1;
if (
((dbIndex)<= (emailers.size()-1))
&&
((dbIndex)>=0)
)
{
ResolveInfo r = emailers.get(dbIndex);
inputIntent.setClassName(r.activityInfo.packageName, r.activityInfo.name);
Toast.makeText(mycontext,r.activityInfo.packageName+" "+r.activityInfo.name ,Toast.LENGTH_SHORT).show();
}
}
嗯,你把它设置为null,对吧? 'emailIntent = null;'? – g00dy
显示您的完整代码和日志,请 – yushulx
我必须首先设置emailIntent = null,如果不是,我将得到错误 本地变量emailIntent可能未初始化\t!但是我调用了函数Utility.SetIntent来初始化emailIntent。 – HelloCW