У меня есть этот код в моем MainActivity:Android: startActivityForResult в MainActivity
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView=null;
if (getArguments().getInt(ARG_SECTION_NUMBER)==1){
rootView = inflater.inflate(R.layout.fragment_main, container, false);
final Button newProdButton = (Button) rootView.findViewById(R.id.new_prod_button);
newProdButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent (getActivity(), NewProdActivity.class);
startActivityForResult (intent, OK_NEW_PRODUCT);
}
});
и после
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==OK_NEW_PRODUCT){
if (resultCode == Activity.RESULT_OK) {
Intent intent = new Intent (MainActivity.this, ProductActivity.class);
startActivity(intent);
}
}
}
Цель состоит в том, чтобы начать вторую деятельность в конце первого, в случае, последний успешно выполнил все операции.
, но когда я заканчиваю первую задачу, ничего не происходит, и приложение остается на MainActivity.
Кто-нибудь знает почему ?!
EDIT
решаемые с:
getActivity().startActivityForResult (intent, OK_NEW_PRODUCT);
вы пробовали => ResultCode == RESULT_OK вместо ResultCode == Activity.RESULT_OK? – Jamil
добавить некоторый вход в метод onActivityResult к определенному запуску программы при финишировании первой активности. Если нет, пожалуйста, определите метод callResult для завершения первого действия. – UperOne
Лемме спрашивает что-то только для подтверждения, вы уверены, что ваша первая деятельность - это деятельность, а не фрагмент? –