Adapter中的傳值代碼
edit.setOnClickListener(newView.OnClickListener() {
@Override
public voidonClick(View v) {
Intent intent =new Intent(context,A.class);
Bundle bundle =new Bundle();
bundle.putInt("type",40);
//? ? intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//不是在Activity中進行跳轉(zhuǎn),需要添加這個方法,網(wǎng)友說這樣可以,但是我測試后發(fā)現(xiàn),這句話的存在會導(dǎo)致一個嚴重的問題,就是我們在onActivityResult中,收不到Activity ?A傳過來的值,不用這一句,程序就可以正常了
bundle.putSerializable("k",mdata.get(positionNow));
intent.putExtras(bundle);
context.startActivityForResult(intent,40);
}
});
從其他Activity返回值的接收方法,就是在該Actiivty中重寫onActivityResult()方法
@Override
protected voidonActivityResult(intrequestCode, intresponseCode,
Intent intent) {
super.onActivityResult(requestCode,responseCode,intent);
if(requestCode ==40){
if(responseCode == Constants.ReturnCode_OK){
int type = intent.getExtras().getInt("type");
}
}
}
/**? ? * 判斷某個服務(wù)是否正在運行的方法? ? *?
?? * @param mContext? ? * @param serviceName? ? *? ? ? ? ? ? 是包名+服務(wù)的類名(例如:net.loonggg.testbackstage.TestService)? ? * @return true代表正在運行,false代表服務(wù)沒有正在運行? ? */? ?
?public boolean isServiceWork(Context mContext, String serviceName) {? ? ? ? boolean isWork = false;? ? ? ? ? ActivityManager myAM = (ActivityManager) mContext? ? ? ? ? ? ? ? ? .getSystemService(Context.ACTIVITY_SERVICE);? ? ? ? ? ListmyList = myAM.getRunningServices(100);
if (myList.size() <= 0) {
return false;
}
for (int i = 0; i < myList.size(); i++) {
String mName = myList.get(i).service.getClassName().toString();
if (mName.equals(serviceName)) {
isWork = true;
break;
}
}
return isWork;
}