问题描述
我没有得到OnActivityResult。当我从第二个活动返回可序列化列表时,此方法未调用。请检查下面的代码,如果我有任何错误,请让我现在吧!
`
列出活动
professional_filter.setonClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(ProfessionalListActivity.this,ProfessionalFilter.class);
intent.putExtra("data_list",(Serializable)professionalDataList);
startActivityForResult(intent,PROFESSIONAL_INTENT_REQUEST_CODE);
startActivity(intent);
}
});
@Override
protected void onActivityResult(int requestCode,int resultCode,Intent intent) {
// super.onActivityResult(requestCode,resultCode,intent);
super.onActivityResult(requestCode,intent);
if (resultCode == RESULT_OK) {
if (requestCode == PROFESSIONAL_INTENT_REQUEST_CODE) {
intent = getIntent();
ProfessionalDataList professionalD
ataList = (ProfessionalDataList)
intent.getSerializableExtra("data_list");
professionallistadapter = new
Professionallistadapter(ProfessionalListActivity.this,(List<ProfessionalDataList>) professionalDataList,false);
recyclerView.setAdapter(professionallistadapter);
isGrid = true;
professionallistadapter.notifyDataSetChanged();
}
}
> Filter Activity
@Override
protected void onCreate(Bundle savedInstanceState) {
professionalDataList= (List<ProfessionalDataList>)
getIntent().getSerializableExtra("data_list");
}
> From api response am saving data.If api
通话成功,我需要将此数据传递到列表活动并更新我的回收商列表。但是现在没有获取数据,列表也没有更新
Intent intent = new
Intent(ProfessionalFilter.this,ProfessionalListActivity.class);
intent.putExtra("data_list",(Serializable) professionalDataList);
setResult(Activity.RESULT_OK,intent);
startActivity(intent);
finish();
解决方法
只需要这样删除startActivity(intent)
Intent intent = new Intent();
intent.putExtra("data_list",(Serializable) professionalDataList);
setResult(Activity.RESULT_OK,intent);
finish();