package monnethic.mobile.wallet; import android.content.Intent; import android.os.AsyncTask; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.AdapterView; import android.widget.ListView; import android.widget.Toast; import com.example.monnthic.monnethicmobile.R; import java.util.ArrayList; import monnethic.mobile.restApi.WalletApiHandler; import monnethic.mobile.user.UserAccountActivity; public class SelectWalletActivity extends AppCompatActivity { private ArrayList userWallets; private String user_hash; private String user_password; private String session_id; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_select_wallet); ListView listView = (ListView) findViewById(R.id.listViewWallet); Intent intent = getIntent(); user_hash = intent.getStringExtra("USER_HASH"); user_password = intent.getStringExtra("USER_PWD"); session_id = intent.getStringExtra("SESSION_ID"); String[] params = {user_hash}; try { userWallets = new getUserWalletTask().execute(params).get(); } catch (Exception e){ e.printStackTrace(); } WalletAdapter adapter = new WalletAdapter(this,userWallets); listView.setAdapter(adapter); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView adapterView, View view, int i, long l) { Wallet w = (Wallet) listView.getItemAtPosition(i); launchAcountActivity(w); } }); } public void launchAcountActivity(Wallet w) { Intent accountIntent = new Intent(SelectWalletActivity.this, UserAccountActivity.class); accountIntent.putExtra("USER_HASH",user_hash); accountIntent.putExtra("USER_PWD",user_password); accountIntent.putExtra("SESSION_ID",session_id); accountIntent.putExtra("WALLET_HASH",w.getWallet_hash()); accountIntent.putExtra("WALLET_BALANCE",String.valueOf(w.getBalance())); accountIntent.putExtra("WALLET_TYPE",w.getType()); SelectWalletActivity.this.startActivity(accountIntent); } //AsyncTask to get user wallets static private class getUserWalletTask extends AsyncTask> { @Override protected ArrayList doInBackground(String... params) { ArrayList walletsList = new ArrayList<>(); try{ WalletApiHandler walletApiHandler = new WalletApiHandler(); walletsList = walletApiHandler.getUserWallets(params); }catch (Exception e){ e.printStackTrace(); } return walletsList; } } @Override protected void onStop() { super.onStop(); // Always call the superclass method first Toast.makeText(getApplicationContext(), "onStop called", Toast.LENGTH_LONG).show(); } }