3
Good evening, I have an app with two Activity that loads external data, and I’m having trouble changing Activity before it loads all the data.When I call Activity Category, it loads external data, but if you call Activity Products before Activity Categoria load all the data I have this error :
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.soares.comprassupermecado, PID: 25322
android.content.ActivityNotFoundException: No Activity found to handle Intent { flg=0x14000000 launchParam=MultiScreenLaunchParams { mDisplayId=0 mBaseDisplayId=0 mFlags=0 } }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1844)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1531)
at android.app.Activity.startActivityForResult(Activity.java:4403)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
at android.app.Activity.startActivityForResult(Activity.java:4362)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:741)
at android.app.Activity.startActivity(Activity.java:4686)
at android.app.Activity.startActivity(Activity.java:4654)
at com.example.soares.comprassupermecado.TelaPrincipal.onNavigationItemSelected(TelaPrincipal.java:166)
at android.support.design.widget.NavigationView$1.onMenuItemSelected(NavigationView.java:170)
at android.support.v7.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:840)
at android.support.v7.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:158)
at android.support.v7.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:991)
at android.support.design.internal.NavigationMenuPresenter$1.onClick(NavigationMenuPresenter.java:352)
at android.view.View.performClick(View.java:6261)
at android.view.View$PerformClick.run(View.java:23752)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6776)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1386)
My Main Activity(navigation Drawer )
package com.example.soares.comprassupermecado;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.MenuInflater;
import android.view.View;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
import android.widget.Toast;
import com.example.soares.comprassupermecado.Fragments.Fragment_Categorias;
import com.example.soares.comprassupermecado.Fragments.Fragment_Produtos;
import com.example.soares.comprassupermecado.Fragments.Fragment_lista;
import com.squareup.picasso.Picasso;
import de.hdodenhof.circleimageview.CircleImageView;
public class TelaPrincipal extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener {
public static final String StatusLoginAuto = "StatusLoginAuto";
String UrlFoto = "";
String NomeUser = "";
String fragmentAction = "";
Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tela_principal);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
View hView = navigationView.getHeaderView(0);
SharedPreferences settings = getSharedPreferences(StatusLoginAuto, 0);
UrlFoto = settings.getString("fotouser","");
NomeUser = settings.getString("nomeuser","");
TextView UserLogado = (TextView)hView.findViewById(R.id.EditUserLogado);
TextView BemVindo = (TextView)hView.findViewById(R.id.EditBemVindo);
String LinkFotoUSer = "http://192.168.0.120/profile/" + UrlFoto;
CircleImageView imagem_profile = (CircleImageView)hView.findViewById(R.id.ImageProfile);
BemVindo.setText("Olá,");
UserLogado.setText(NomeUser);
Picasso.get().load(LinkFotoUSer).into(imagem_profile);
getSupportActionBar().setTitle("Lista de Compras");
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new Fragment_lista())
.commit();
fragmentAction = "2";
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_os, menu);
MenuItem shareItem = menu.findItem(R.id.action_back);
if (fragmentAction.equals("1")) {
shareItem.setVisible(false);
}
if (fragmentAction.equals("2")) {
shareItem.setVisible(true);
}
if (fragmentAction.equals("3")) {
shareItem.setVisible(false);
}
return true;
}
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
finishAffinity();
}
}
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_back:
if (getSupportFragmentManager().getFragments() != null && getSupportFragmentManager().getFragments().size() > 0) {
for (int i = 0; i 0) {
for (int i = 0; i
Activity Categoria
package com.example.soares.comprassupermecado.Fragments;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
import com.example.soares.comprassupermecado.ItemFragments.ItemCategorias;
import com.example.soares.comprassupermecado.ListAdapter.ListAdapterCategorias;
import com.example.soares.comprassupermecado.NewCategoria;
import com.example.soares.comprassupermecado.R;
import com.example.soares.comprassupermecado.ViewCategoria;
import com.example.soares.comprassupermecado.WebService.ConexaoDB;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
public class Fragment_Categorias extends Fragment implements View.OnClickListener {
private String url = "";
private String parametros ="";
public static final String StatusLoginAuto = "StatusLoginAuto";
private ListView listCategoria;
private ProgressBar progressBar;
private TextView textresultbusca;
private ImageView BtnNovaCategoria;
private int i;
private LayoutInflater inflater;
private View view;
ArrayList listaCategoria = new ArrayList();
String StatusJson = "";
String NomeCategoria = "";
String IdCategoria = "";
String QuantCategoria = "";
String ObsCategoria = "";
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
if (view == null) {
SharedPreferences settings = this.getActivity().getSharedPreferences(StatusLoginAuto, 0);
String Chave = settings.getString("chaveusuario","");
view = inflater.inflate(R.layout.fragment_fragment__categorias,null);
listCategoria = (ListView)view.findViewById(R.id.listCategorias);
final Handler handler = new Handler();
boolean b = handler.postDelayed(new Runnable() {
@Override
public void run() {
ListAdapterCategorias adapterCategorias = new ListAdapterCategorias(getContext(), listaCategoria);
listCategoria.setAdapter(adapterCategorias);
progressBar = (ProgressBar) view.findViewById(R.id.HeaderProgressCategoria);
textresultbusca = (TextView) view.findViewById(R.id.ResultBuscaCategoria);
BtnNovaCategoria = (ImageView) view.findViewById(R.id.BtnNovaCategoria);
progressBar.setVisibility(view.GONE);
BtnNovaCategoria.setVisibility(view.VISIBLE);
if (StatusJson.equals("1")) {
textresultbusca.setVisibility(view.VISIBLE);
}
}
}, 5000);
listCategoria.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView adapterView, View view, int position, long id) {
TextView TextIDCategoria = (TextView) view.findViewById(R.id.TextID);
TextView TextNomeCategoria = (TextView) view.findViewById(R.id.TextNomeCategoria);
TextView TextObsCategoria = (TextView) view.findViewById(R.id.TextObs);
TextView TextQuantProdutos = (TextView) view.findViewById(R.id.NumerosQuantProdutos);
String IDCategoria = TextIDCategoria.getText().toString();
String NomeCategoria = TextNomeCategoria.getText().toString();
String ObsCategoria = TextObsCategoria.getText().toString();
String QuantCategoria = TextQuantProdutos.getText().toString();
Bundle extras = new Bundle();
extras.putString("idcategoria",IDCategoria);
extras.putString("nomecategoria",NomeCategoria);
extras.putString("obscategoria",ObsCategoria);
extras.putString("quantcategoria",QuantCategoria);
Intent intent = new Intent(getActivity(), ViewCategoria.class);
intent.putExtras(extras);
startActivity(intent);
}
});
}
return view;
}
@Override
public void onResume() {
listaCategoria.clear();
listCategoria = (ListView)view.findViewById(R.id.listCategorias);
progressBar = (ProgressBar) view.findViewById(R.id.HeaderProgressCategoria);
textresultbusca = (TextView) view.findViewById(R.id.ResultBuscaCategoria);
BtnNovaCategoria = (ImageView) view.findViewById(R.id.BtnNovaCategoria);
listCategoria.setAdapter(null);
progressBar.setVisibility(view.VISIBLE);
BtnNovaCategoria.setVisibility(view.GONE);
textresultbusca.setVisibility(view.GONE);
SharedPreferences settings = this.getActivity().getSharedPreferences(StatusLoginAuto, 0);
String Chave = settings.getString("chaveusuario","");
url = "http://192.168.0.120/compras/categorias.php?status=listview&chave=" + Chave;
new SolicitarDados().execute(url);
final Handler handler = new Handler();
boolean b = handler.postDelayed(new Runnable() {
@Override
public void run() {
ListAdapterCategorias adapterCategorias = new ListAdapterCategorias(getContext(), listaCategoria);
listCategoria.setAdapter(adapterCategorias);
progressBar.setVisibility(view.GONE);
BtnNovaCategoria.setVisibility(view.VISIBLE);
if (StatusJson.equals("1")) {
textresultbusca.setVisibility(view.VISIBLE);
}
}
}, 5000);
super.onResume();
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
BtnNovaCategoria = (ImageView) getActivity().findViewById(R.id.BtnNovaCategoria);
BtnNovaCategoria.setOnClickListener((View.OnClickListener) this);
super.onActivityCreated(savedInstanceState);
}
@Override
public void onClick(final View v) {
switch (v.getId()) {
case R.id.BtnNovaCategoria:
Intent intent = new Intent(getActivity(), NewCategoria.class);
startActivity(intent);
break;
}
}
private class SolicitarDados extends AsyncTask {
View view;
@Override
protected String doInBackground(String... urls) {
return ConexaoDB.postDados(urls[0], parametros);
}
@Override
protected void onPostExecute(String result) {
if(result != null) {
try {
JSONArray jsonarray = new JSONArray(result);
for (i = 0; i
Activity Produto
package com.example.soares.comprassupermecado.Fragments;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.example.soares.comprassupermecado.ItemFragments.ItemProdutos;
import com.example.soares.comprassupermecado.ListAdapter.ListAdapterProdutos;
import com.example.soares.comprassupermecado.NewCategoria;
import com.example.soares.comprassupermecado.NewProduto;
import com.example.soares.comprassupermecado.R;
import com.example.soares.comprassupermecado.ViewProduto;
import com.example.soares.comprassupermecado.WebService.ConexaoDB;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
public class Fragment_Produtos extends Fragment implements View.OnClickListener {
private String url ="";
private String parametros ="";
private ListView listProdutos;
private ProgressBar progressBar;
private TextView textresultbusca;
private ImageView BtnNovoProduto;
private int i;
private LayoutInflater inflater;
private View view;
public static final String StatusLoginAuto = "StatusLoginAuto";
ArrayList listaProdutos = new ArrayList();
String StatusJson = "";
String NomeProduto = "";
String IdProduto = "";
String ObsProduto = "";
String CategoriaProduto = "";
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
if (view == null) {
view = inflater.inflate(R.layout.fragment_fragment__produtos,null);
listProdutos = (ListView)view.findViewById(R.id.listProduto);
final Handler handler = new Handler();
boolean b = handler.postDelayed(new Runnable() {
@Override
public void run() {
ListAdapterProdutos adapterProdutos = new ListAdapterProdutos(getContext(), listaProdutos);
listProdutos.setAdapter(adapterProdutos);
progressBar = (ProgressBar) view.findViewById(R.id.HeaderProgressProduto);
textresultbusca = (TextView) view.findViewById(R.id.ResultBuscaProduto);
BtnNovoProduto = (ImageView) view.findViewById(R.id.BtnNovoProduto);
progressBar.setVisibility(view.GONE);
BtnNovoProduto.setVisibility(view.VISIBLE);
if (StatusJson.equals("1")) {
textresultbusca.setVisibility(view.VISIBLE);
}
}
}, 5000);
listProdutos.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView adapterView, View view, int position, long id) {
TextView TextIDProduto = (TextView) view.findViewById(R.id.TextIDProduto);
TextView TextNomeProduto = (TextView) view.findViewById(R.id.TextNomeProduto);
TextView TextObsProduto = (TextView) view.findViewById(R.id.TextObsProduto);
TextView TextCategoriaProduto = (TextView) view.findViewById(R.id.TextNomeProduto);
String IDProduto = TextIDProduto.getText().toString();
String NomeProduto = TextNomeProduto.getText().toString();
String ObsProduto = TextObsProduto.getText().toString();
String CategoriaProduto = TextCategoriaProduto.getText().toString();
Bundle extras = new Bundle();
extras.putString("idproduto",IDProduto);
extras.putString("nomeproduto",NomeProduto);
extras.putString("obsproduto",ObsProduto);
extras.putString("categoriaproduto",CategoriaProduto);
Intent intent = new Intent(getActivity(), ViewProduto.class);
intent.putExtras(extras);
startActivity(intent);
}
});
}
return view;
}
@Override
public void onResume() {
listaProdutos.clear();
listProdutos = (ListView)view.findViewById(R.id.listProduto);
progressBar = (ProgressBar) view.findViewById(R.id.HeaderProgressProduto);
textresultbusca = (TextView) view.findViewById(R.id.ResultBuscaProduto);
BtnNovoProduto = (ImageView) view.findViewById(R.id.BtnNovoProduto);
listProdutos.setAdapter(null);
progressBar.setVisibility(view.VISIBLE);
BtnNovoProduto.setVisibility(view.GONE);
textresultbusca.setVisibility(view.GONE);
SharedPreferences settings = this.getActivity().getSharedPreferences(StatusLoginAuto, 0);
String Chave = settings.getString("chaveusuario","");
url = "http://192.168.0.120/compras/produtos.php?status=listview&chave=" + Chave;
new SolicitarDados().execute(url);
final Handler handler = new Handler();
boolean b = handler.postDelayed(new Runnable() {
@Override
public void run() {
ListAdapterProdutos adapterProdutos = new ListAdapterProdutos(getContext(), listaProdutos);
listProdutos.setAdapter(adapterProdutos);
progressBar = (ProgressBar) view.findViewById(R.id.HeaderProgressProduto);
textresultbusca = (TextView) view.findViewById(R.id.ResultBuscaProduto);
BtnNovoProduto = (ImageView) view.findViewById(R.id.BtnNovoProduto);
progressBar.setVisibility(view.GONE);
BtnNovoProduto.setVisibility(view.VISIBLE);
if (StatusJson.equals("1")) {
textresultbusca.setVisibility(view.VISIBLE);
}
}
}, 5000);
super.onResume();
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
BtnNovoProduto = (ImageView) getActivity().findViewById(R.id.BtnNovoProduto);
BtnNovoProduto.setOnClickListener((View.OnClickListener) this);
super.onActivityCreated(savedInstanceState);
}
@Override
public void onClick(final View v) {
switch (v.getId()) {
case R.id.BtnNovoProduto:
Intent intent = new Intent(getActivity(), NewProduto.class);
startActivity(intent);
break;
}
}
private class SolicitarDados extends AsyncTask {
View view;
@Override
protected String doInBackground(String... urls) {
return ConexaoDB.postDados(urls[0], parametros);
}
@Override
protected void onPostExecute(String result) {
if(result != null) {
try {
JSONArray jsonarray = new JSONArray(result);
for (i = 0; i
Manifest
The same thing happens by changing the order of the Activitys. Can you help me ?
Post your code where a Activity calls the other and its pole
manifest.xmlalso.– StatelessDev
updated the question with the codes
– Mateus Soares