Inserting tabbed views for already created activities - android

I am new to android and stackoverflow so forgive if it sounds or reads silly. I have a listview of suppose 10 job details. The list consists of only the names of the jobs. When I tap on any name, I want to open two tabbed views. The first tab would contain further details of the job and the second tab would contain a data entry page which will take input from the user for storage. All the job details (names and further details) are parsed from a json string fetched from the web.
Now, I have created the listview and the details page (containing further details of a single job). But I can't implement the tabbed view on the details page, i.e., I can't make a normal activity tabbed. Please help.
Note: The job list page gets all the details too, but in the XML the visibility of all the details except the job name is kept at "gone".
Ijob.java (Job list activity)
package com.example.administrator.signin;
import com.example.administrator.signin.R;
import java.util.ArrayList;
import java.util.HashMap;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.ListActivity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.Settings;
import android.telephony.TelephonyManager;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
public class Ijob extends ListActivity {
private ProgressDialog pDialog;
// URL to get contacts JSON
// JSON Node names
private static final String TAG_CON_NO = "CONSUMER_NO";
private static final String TAG_MET_NO = "METER_NO";
private static final String TAG_REC_ON = "RECEIVED_ON";
private static final String TAG_CON_NAME = "CON_NAME";
//private static final String TAG_CON_CAT = "CON_CAT";
private static final String TAG_MET_RAT = "MET_RAT";
private static final String TAG_CON_ADD = "CON_ADD";
//private static final String TAG_CON_ACC_ADD = "CON_ACC_ADD";
private static final String TAG_COM_RSN = "COM_RSN";
private static final String TAG_M_REF = "M_REF";
private static final String TAG_M_DATE = "M_DATE";
// //private static final String TAG_CON_CAT = " ";
private static final String TAG_PREV_DATA = "PREV_DATA";
private static final String TAG_TELE_NO = "TELE_NO";
private static final String TAG_IE_DT_N_PRSNT_PREV_RDG = "IE_DT_N_PRSNT_PREV_RDG";
private static final String TAG_LCC_LRO_ROM = "LCC_LRO_ROM";
// Hashmap for ListView
ArrayList<HashMap<String, String>> jobList;
#Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ijob);
jobList = new ArrayList<HashMap<String, String>>();
ListView lv = getListView();
// Listview on item click listener
lv.setOnItemClickListener(new OnItemClickListener() {
#Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// getting values from selected ListItem
String CONSUMER_NO = ((TextView) view.findViewById(R.id.CON_NO))
.getText().toString();
String METER_NO = ((TextView) view.findViewById(R.id.MET_NO))
.getText().toString();
String MET_RAT = ((TextView) view.findViewById(R.id.MET_RAT))
.getText().toString();
String REC_ON = ((TextView) view.findViewById(R.id.REC_ON))
.getText().toString();
String CON_NAME = ((TextView) view.findViewById(R.id.CON_NAME))
.getText().toString();
String CON_ADD = ((TextView) view.findViewById(R.id.CON_ADD))
.getText().toString();
String COM_RSN = ((TextView) view.findViewById(R.id.COM_RSN))
.getText().toString();
String M_REF = ((TextView) view.findViewById(R.id.M_REF))
.getText().toString();
String M_DATE = ((TextView) view.findViewById(R.id.M_DATE))
.getText().toString();
String PREV_DATA = ((TextView) view.findViewById(R.id.PREV_DATA)).getText().toString();
String TELE_NO = ((TextView) view.findViewById(R.id.TELE_NO))
.getText().toString();
String IE_DT_N_PRSNT_PREV_RDG = ((TextView) view.findViewById(R.id.IE_DT_N_PRSNT_PREV_RDG))
.getText().toString();
String LCC_LRO_ROM = ((TextView) view.findViewById(R.id.LCC_LRO_ROM))
.getText().toString();
// Starting single contact activity
Intent in = new Intent(getApplicationContext(),
SingleContactActivity.class);
in.putExtra(TAG_CON_NO, CONSUMER_NO);
in.putExtra(TAG_MET_NO, METER_NO);
in.putExtra(TAG_MET_RAT, MET_RAT);
in.putExtra(TAG_REC_ON, REC_ON);
in.putExtra(TAG_CON_NAME, CON_NAME);
in.putExtra(TAG_CON_ADD, CON_ADD);
in.putExtra(TAG_COM_RSN, COM_RSN);
in.putExtra(TAG_M_REF, M_REF);
in.putExtra(TAG_M_DATE, M_DATE);
in.putExtra(TAG_PREV_DATA, PREV_DATA);
in.putExtra(TAG_TELE_NO, TELE_NO);
in.putExtra(TAG_IE_DT_N_PRSNT_PREV_RDG, IE_DT_N_PRSNT_PREV_RDG);
in.putExtra(TAG_LCC_LRO_ROM, LCC_LRO_ROM);
startActivity(in);
}
});
// Calling async task to get json
new GetContacts().execute();
}
/**
* Async task class to get json by making HTTP call
* */
private class GetContacts extends AsyncTask<Void, Void, Void> {
#Override
protected void onPreExecute() {
super.onPreExecute();
// Showing progress dialog
pDialog = new ProgressDialog(Ijob.this);
pDialog.setMessage("Please wait...");
pDialog.setCancelable(false);
pDialog.show();
}
#Override
protected Void doInBackground(Void... arg0) {
// Creating service handler class instance
ServiceHandler sh = new ServiceHandler();
// Making a request to url and getting response
String aid = Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID);
String url = "http://00.00.00.00/fetch_emp_1.jsp?ecd=" + aid;
String jsonStr = sh.makeServiceCall(url, ServiceHandler.GET);
Log.d("Response: ", "> " + jsonStr);
if (jsonStr != null) {
try {
// JSONObject jsonObj = new JSONObject(jsonStr);
JSONArray jobs = new JSONArray(jsonStr);
// Getting JSON Array node
// jobs = jsonObj.getJSONArray("");
// looping through All Contacts
for (int i = 0; i < jobs.length(); i++) {
JSONObject c = jobs.getJSONObject(i);
String CON_NO = c.getString(TAG_CON_NO);// +" - "+c.getString(TAG_CON_CAT);
String MET_NO = c.getString(TAG_MET_NO);
String MET_RAT = c.getString(TAG_MET_RAT);
String REC_ON = c.getString(TAG_REC_ON);
String CON_NAME = (i + 1) + " . " + c.getString(TAG_CON_NAME);
String CON_ADD = c.getString(TAG_CON_ADD); //+" "+c.getString(TAG_CON_ACC_ADD);
String COM_RSN = c.getString(TAG_COM_RSN);
String M_REF = c.getString(TAG_M_REF);
String M_DATE = c.getString(TAG_M_DATE);
String PREV_DATA = c.getString(TAG_PREV_DATA);
String TELE_NO = c.getString(TAG_TELE_NO);
String IE_DT_N_PRSNT_PREV_RDG = c.getString(TAG_IE_DT_N_PRSNT_PREV_RDG);
String LCC_LRO_ROM = c.getString(TAG_LCC_LRO_ROM);
// tmp hashmap for single contact
HashMap<String, String> contact = new HashMap<String, String>();
// adding each child node to HashMap key => value
contact.put(TAG_CON_NO, CON_NO);
contact.put(TAG_MET_NO, MET_NO);
contact.put(TAG_MET_RAT, MET_RAT);
contact.put(TAG_REC_ON, REC_ON);
contact.put(TAG_CON_NAME, CON_NAME);
contact.put(TAG_CON_ADD, CON_ADD);
contact.put(TAG_COM_RSN, COM_RSN);
contact.put(TAG_M_REF, M_REF);
contact.put(TAG_M_DATE, M_DATE);
contact.put(TAG_PREV_DATA, PREV_DATA);
contact.put(TAG_TELE_NO, TELE_NO);
contact.put(TAG_IE_DT_N_PRSNT_PREV_RDG, IE_DT_N_PRSNT_PREV_RDG);
contact.put(TAG_LCC_LRO_ROM, LCC_LRO_ROM);
// adding contact to contact list
jobList.add(contact);
}
} catch (JSONException e) {
e.printStackTrace();
}
} else {
Log.e("ServiceHandler", "Couldn't get any data from the url");
}
return null;
}
#Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
// Dismiss the progress dialog
if (pDialog.isShowing())
pDialog.dismiss();
/**
* Updating parsed JSON data into ListView
* */
ListAdapter adapter = new SimpleAdapter(
Ijob.this, jobList,
R.layout.list_item, new String[]{TAG_CON_NO, TAG_MET_NO, TAG_MET_RAT,
TAG_REC_ON, TAG_CON_NAME, TAG_CON_ADD, TAG_COM_RSN, TAG_M_REF, TAG_M_DATE, TAG_PREV_DATA, TAG_TELE_NO, TAG_IE_DT_N_PRSNT_PREV_RDG, TAG_LCC_LRO_ROM}, new int[]{R.id.CON_NO,
R.id.MET_NO, R.id.MET_RAT, R.id.REC_ON, R.id.CON_NAME, R.id.CON_ADD, R.id.COM_RSN, R.id.M_REF, R.id.M_DATE, R.id.PREV_DATA, R.id.TELE_NO, R.id.IE_DT_N_PRSNT_PREV_RDG, R.id.LCC_LRO_ROM});
setListAdapter(adapter);
}
}
}
And the single job details page is like this:
package com.example.administrator.signin;
import android.app.ActionBar;
import android.app.Activity;
import android.app.FragmentTransaction;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
public class SingleContactActivity extends Activity {
// JSON node keys
private static final String TAG_CON_NO = "CONSUMER_NO";
private static final String TAG_MET_NO = "METER_NO";
private static final String TAG_REC_ON = "RECEIVED_ON";
private static final String TAG_CON_NAME = "CON_NAME";
private static final String TAG_CON_ADD = "CON_ADD";
private static final String TAG_COM_RSN = "COM_RSN";
private static final String TAG_MET_RAT = "MET_RAT";
private static final String TAG_M_REF = "M_REF";
private static final String TAG_M_DATE = "M_DATE";
//private static final String TAG_CON_CAT = " ";
private static final String TAG_PREV_DATA = "PREV_DATA";
private static final String TAG_TELE_NO = "TELE_NO";
private static final String TAG_IE_DT_N_PRSNT_PREV_RDG = "IE_DT_N_PRSNT_PREV_RDG";
private static final String TAG_LCC_LRO_ROM = "LCC_LRO_ROM";
#Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_single_contact);
// getting intent data
Intent in = getIntent();
// Get JSON values from previous intent
String CON_NO = in.getStringExtra(TAG_CON_NO);
String MET_NO = in.getStringExtra(TAG_MET_NO);
String REC_ON = in.getStringExtra(TAG_REC_ON);
String CON_NAME = in.getStringExtra(TAG_CON_NAME);
String CON_ADD = in.getStringExtra(TAG_CON_ADD);
String COM_RSN = in.getStringExtra(TAG_COM_RSN);
String MET_RAT = in.getStringExtra(TAG_MET_RAT);
//String CON_CAT = in.getStringExtra(TAG_CON_CAT);
String MET_REF = in.getStringExtra(TAG_M_REF);
String M_DATE = in.getStringExtra(TAG_M_DATE);
String PREV_DATA = in.getStringExtra(TAG_PREV_DATA);
String IE_DT_N_PRSNT_PREV_RDG = in.getStringExtra(TAG_IE_DT_N_PRSNT_PREV_RDG);
String LCC_LRO_ROM = in.getStringExtra(TAG_LCC_LRO_ROM);
String TELE_NO = in.getStringExtra(TAG_TELE_NO);
//PARSING THE STRING ===================
String delims = "[;]";
String[] CON_NAME_tokens = CON_NAME.split(" . ");
String[] PREV_DATA_tokens = PREV_DATA.split(delims);
String[] MM_YY_1_final = PREV_DATA_tokens[0].split(":");
String[] MM_YY_2_tokens = PREV_DATA_tokens[1].split(delims);
String[] MM_YY_2_final = MM_YY_2_tokens[0].split(":");
String[] MM_YY_3_tokens = PREV_DATA_tokens[2].split(delims);
String[] MM_YY_3_final = MM_YY_3_tokens[0].split(":");
String[] MM_YY_4_tokens = PREV_DATA_tokens[3].split(delims);
String[] MM_YY_4_final = MM_YY_4_tokens[0].split(":");
String[] MM_YY_5_tokens = PREV_DATA_tokens[4].split(delims);
String[] MM_YY_5_final = MM_YY_5_tokens[0].split(":");
String[] MM_YY_6_tokens = PREV_DATA_tokens[5].split(delims);
String[] MM_YY_6_final = MM_YY_6_tokens[0].split(":");
String[] MM_YY_7_tokens = PREV_DATA_tokens[6].split(delims);
String[] MM_YY_7_final = MM_YY_7_tokens[0].split(":");
String[] MM_YY_8_tokens = PREV_DATA_tokens[7].split(delims);
String[] MM_YY_8_final = MM_YY_8_tokens[0].split(":");
String[] MM_YY_9_tokens = PREV_DATA_tokens[8].split(delims);
String[] MM_YY_9_final = MM_YY_9_tokens[0].split(":");
String[] MM_YY_10_tokens = PREV_DATA_tokens[9].split(delims);
String[] MM_YY_10_final = MM_YY_10_tokens[0].split(":");
String[] MM_YY_11_tokens = PREV_DATA_tokens[10].split(delims);
String[] MM_YY_11_final = MM_YY_11_tokens[0].split(":");
String[] MM_YY_12_tokens = PREV_DATA_tokens[11].split(delims);
String[] MM_YY_12_final = MM_YY_12_tokens[0].split(":");
String[] MM_YY_13_tokens = PREV_DATA_tokens[12].split(delims);
String[] MM_YY_13_final = MM_YY_13_tokens[0].split(":");
String[] MM_YY_14_tokens = PREV_DATA_tokens[13].split(delims);
String[] MM_YY_14_final = MM_YY_14_tokens[0].split(":");
String[] MM_YY_15_tokens = PREV_DATA_tokens[14].split(delims);
String[] MM_YY_15_final = MM_YY_15_tokens[0].split(":");
String[] MM_YY_16_tokens = PREV_DATA_tokens[15].split(delims);
String[] MM_YY_16_final = MM_YY_16_tokens[0].split(":");
String[] MM_YY_17_tokens = PREV_DATA_tokens[16].split(delims);
String[] MM_YY_17_final = MM_YY_17_tokens[0].split(":");
String[] MM_YY_18_tokens = PREV_DATA_tokens[17].split(delims);
String[] MM_YY_18_final = MM_YY_18_tokens[0].split(":");
String[] MM_YY_19_tokens = PREV_DATA_tokens[18].split(delims);
String[] MM_YY_19_final = MM_YY_18_tokens[0].split(":");
String[] MM_YY_20_tokens = PREV_DATA_tokens[19].split(delims);
String[] MM_YY_20_final = MM_YY_20_tokens[0].split(":");
String[] MM_YY_21_tokens = PREV_DATA_tokens[20].split(delims);
String[] MM_YY_21_final = MM_YY_21_tokens[0].split(":");
String[] MM_YY_22_tokens = PREV_DATA_tokens[21].split(delims);
String[] MM_YY_22_final = MM_YY_22_tokens[0].split(":");
String[] MM_YY_23_tokens = PREV_DATA_tokens[22].split(delims);
String[] MM_YY_23_final = MM_YY_23_tokens[0].split(":");
String[] MM_YY_24_tokens = PREV_DATA_tokens[23].split(delims);
String[] MM_YY_24_final = MM_YY_24_tokens[0].split(":");
String[] IE_DT_N_PRSNT_PREV_RDG_tokens =
IE_DT_N_PRSNT_PREV_RDG.split(delims);
String[] IE_date_final = IE_DT_N_PRSNT_PREV_RDG_tokens[0].split(":");
String[] Present_Rdg_tokens = IE_DT_N_PRSNT_PREV_RDG_tokens[1].split(delims);
String[] Present_Rdg_final = Present_Rdg_tokens[0].split(":");
String[] Last_Rdg_tokens = IE_DT_N_PRSNT_PREV_RDG_tokens[2].split(delims);
String[] Last_Rdg_final = Last_Rdg_tokens[0].split(":");
String[] LCC_LRO_ROM_tokens = LCC_LRO_ROM.split(delims);
String[] LCC_Act_final = LCC_LRO_ROM_tokens[0].split(":");
String[] Last_Read_On_tokens = LCC_LRO_ROM_tokens[1].split(delims);
String[] Last_Read_On_final = Last_Read_On_tokens[0].split(":");
String[] R_no_tokens = LCC_LRO_ROM_tokens[2].split(delims);
String[] R_no_final = R_no_tokens[0].split("\\s");
String[] O_no_tokens = LCC_LRO_ROM_tokens[3].split(delims);
String[] O_no_final = R_no_tokens[0].split("\\s");
String[] M_no_tokens = LCC_LRO_ROM_tokens[4].split(delims);
String[] M_no_final = R_no_tokens[0].split("\\s");
//END OF PARSING STRINGS==================
// Displaying all values on the screen
TextView lblMref = (TextView) findViewById(R.id.m_ref);
TextView lblMdate = (TextView) findViewById(R.id.m_date);
TextView lblRec_On = (TextView) findViewById(R.id.rec_on_label);
TextView lblCons_No = (TextView) findViewById(R.id.con_no_label);
TextView lblMet_No = (TextView) findViewById(R.id.met_no_label);
TextView lblCons_Name = (TextView) findViewById(R.id.con_name_label);
TextView lblCons_Addr = (TextView) findViewById(R.id.con_add_label);
TextView lblComp_Reason = (TextView) findViewById(R.id.com_rsn_label);
TextView lblMet_Rat = (TextView) findViewById(R.id.met_rat_label);
TextView lblCon_Cat = (TextView) findViewById(R.id.con_cat_label);
TextView lblTele_No = (TextView) findViewById(R.id.tele_no_label);
TextView lblIE_Date_final = (TextView) findViewById(R.id.IE_label);
TextView lblPresent_Rdng_final = (TextView) findViewById(R.id.present_reading_label);
TextView lblLast_Rdng_final = (TextView) findViewById(R.id.prev_reading_label);
TextView lblLCC_Act_final = (TextView) findViewById(R.id.lcc_action_label);
TextView lblLast_read_On_final = (TextView) findViewById(R.id.last_read_label);
TextView lblR_no_final = (TextView) findViewById(R.id.R_no_label);
TextView lblO_no_final = (TextView) findViewById(R.id.O_no_label);
TextView lblM_no_final = (TextView) findViewById(R.id.M_no_label);
TextView lblMMYY_1 = (TextView) findViewById(R.id.mm_yy_1);
TextView lblMMYY_2 = (TextView) findViewById(R.id.mm_yy_2);
TextView lblMMYY_3 = (TextView) findViewById(R.id.mm_yy_3);
TextView lblMMYY_4 = (TextView) findViewById(R.id.mm_yy_4);
TextView lblMMYY_5 = (TextView) findViewById(R.id.mm_yy_5);
TextView lblMMYY_6 = (TextView) findViewById(R.id.mm_yy_6);
TextView lblMMYY_7 = (TextView) findViewById(R.id.mm_yy_7);
TextView lblMMYY_8 = (TextView) findViewById(R.id.mm_yy_8);
TextView lblMMYY_9 = (TextView) findViewById(R.id.mm_yy_9);
TextView lblMMYY_10 = (TextView) findViewById(R.id.mm_yy_10);
TextView lblMMYY_11 = (TextView) findViewById(R.id.mm_yy_11);
TextView lblMMYY_12 = (TextView) findViewById(R.id.mm_yy_12);
TextView lblMMYY_13 = (TextView) findViewById(R.id.mm_yy_13);
TextView lblMMYY_14 = (TextView) findViewById(R.id.mm_yy_14);
TextView lblMMYY_15 = (TextView) findViewById(R.id.mm_yy_15);
TextView lblMMYY_16 = (TextView) findViewById(R.id.mm_yy_16);
TextView lblMMYY_17 = (TextView) findViewById(R.id.mm_yy_17);
TextView lblMMYY_18 = (TextView) findViewById(R.id.mm_yy_18);
TextView lblMMYY_19 = (TextView) findViewById(R.id.mm_yy_19);
TextView lblMMYY_20 = (TextView) findViewById(R.id.mm_yy_20);
TextView lblMMYY_21 = (TextView) findViewById(R.id.mm_yy_21);
TextView lblMMYY_22 = (TextView) findViewById(R.id.mm_yy_22);
TextView lblMMYY_23 = (TextView) findViewById(R.id.mm_yy_23);
TextView lblMMYY_24 = (TextView) findViewById(R.id.mm_yy_24);
TextView lblCont_1 = (TextView) findViewById(R.id.mm_yy_1_content);
TextView lblCont_2 = (TextView) findViewById(R.id.mm_yy_2_content);
TextView lblCont_3 = (TextView) findViewById(R.id.mm_yy_3_content);
TextView lblCont_4 = (TextView) findViewById(R.id.mm_yy_4_content);
TextView lblCont_5 = (TextView) findViewById(R.id.mm_yy_5_content);
TextView lblCont_6 = (TextView) findViewById(R.id.mm_yy_6_content);
TextView lblCont_7 = (TextView) findViewById(R.id.mm_yy_7_content);
TextView lblCont_8 = (TextView) findViewById(R.id.mm_yy_8_content);
TextView lblCont_9 = (TextView) findViewById(R.id.mm_yy_9_content);
TextView lblCont_10 = (TextView) findViewById(R.id.mm_yy_10_content);
TextView lblCont_11 = (TextView) findViewById(R.id.mm_yy_11_content);
TextView lblCont_12 = (TextView) findViewById(R.id.mm_yy_12_content);
TextView lblCont_13 = (TextView) findViewById(R.id.mm_yy_13_content);
TextView lblCont_14 = (TextView) findViewById(R.id.mm_yy_14_content);
TextView lblCont_15 = (TextView) findViewById(R.id.mm_yy_15_content);
TextView lblCont_16 = (TextView) findViewById(R.id.mm_yy_16_content);
TextView lblCont_17 = (TextView) findViewById(R.id.mm_yy_17_content);
TextView lblCont_18 = (TextView) findViewById(R.id.mm_yy_18_content);
TextView lblCont_19 = (TextView) findViewById(R.id.mm_yy_19_content);
TextView lblCont_20 = (TextView) findViewById(R.id.mm_yy_20_content);
TextView lblCont_21 = (TextView) findViewById(R.id.mm_yy_21_content);
TextView lblCont_22 = (TextView) findViewById(R.id.mm_yy_22_content);
TextView lblCont_23 = (TextView) findViewById(R.id.mm_yy_23_content);
TextView lblCont_24 = (TextView) findViewById(R.id.mm_yy_24_content);
lblMref.setText(MET_REF);
lblMdate.setText(M_DATE);
lblRec_On.setText(REC_ON);
lblCons_No.setText(CON_NO);
lblMet_No.setText(MET_NO);
lblCons_Name.setText(CON_NAME_tokens[1]);
lblCons_Addr.setText(CON_ADD);
lblComp_Reason.setText(COM_RSN);
lblMet_Rat.setText(MET_RAT);
// lblCon_Cat.setText(CON_CAT);
lblIE_Date_final.setText(IE_date_final[1]);
lblPresent_Rdng_final.setText(Present_Rdg_final[1]);
lblLast_Rdng_final.setText(Last_Rdg_final[1]);
lblLCC_Act_final.setText(LCC_Act_final[1]);
lblLast_read_On_final.setText(Last_Read_On_final[1]);
lblR_no_final.setText(R_no_final[2]);
lblO_no_final.setText(O_no_final[2]);
lblM_no_final.setText(M_no_final[2]);
lblTele_No.setText(TELE_NO);
lblMMYY_1.setText(MM_YY_1_final[0]);
lblMMYY_2.setText(MM_YY_2_final[0]);
lblMMYY_3.setText(MM_YY_3_final[0]);
lblMMYY_4.setText(MM_YY_4_final[0]);
lblMMYY_5.setText(MM_YY_5_final[0]);
lblMMYY_6.setText(MM_YY_6_final[0]);
lblMMYY_7.setText(MM_YY_7_final[0]);
lblMMYY_8.setText(MM_YY_8_final[0]);
lblMMYY_9.setText(MM_YY_9_final[0]);
lblMMYY_10.setText(MM_YY_10_final[0]);
lblMMYY_11.setText(MM_YY_11_final[0]);
lblMMYY_12.setText(MM_YY_12_final[0]);
lblMMYY_13.setText(MM_YY_13_final[0]);
lblMMYY_14.setText(MM_YY_14_final[0]);
lblMMYY_15.setText(MM_YY_15_final[0]);
lblMMYY_16.setText(MM_YY_16_final[0]);
lblMMYY_17.setText(MM_YY_17_final[0]);
lblMMYY_18.setText(MM_YY_18_final[0]);
lblMMYY_19.setText(MM_YY_19_final[0]);
lblMMYY_20.setText(MM_YY_20_final[0]);
lblMMYY_21.setText(MM_YY_21_final[0]);
lblMMYY_22.setText(MM_YY_22_final[0]);
lblMMYY_23.setText(MM_YY_23_final[0]);
lblMMYY_24.setText(MM_YY_24_final[0]);
lblCont_1.setText(MM_YY_1_final[1]);
lblCont_2.setText(MM_YY_2_final[1]);
lblCont_3.setText(MM_YY_3_final[1]);
lblCont_4.setText(MM_YY_4_final[1]);
lblCont_5.setText(MM_YY_5_final[1]);
lblCont_6.setText(MM_YY_6_final[1]);
lblCont_7.setText(MM_YY_7_final[1]);
lblCont_8.setText(MM_YY_8_final[1]);
lblCont_9.setText(MM_YY_9_final[1]);
lblCont_10.setText(MM_YY_10_final[1]);
lblCont_11.setText(MM_YY_11_final[1]);
lblCont_12.setText(MM_YY_12_final[1]);
lblCont_13.setText(MM_YY_13_final[1]);
lblCont_14.setText(MM_YY_14_final[1]);
lblCont_15.setText(MM_YY_15_final[1]);
lblCont_16.setText(MM_YY_16_final[1]);
lblCont_17.setText(MM_YY_17_final[1]);
lblCont_18.setText(MM_YY_18_final[1]);
lblCont_19.setText(MM_YY_19_final[1]);
lblCont_20.setText(MM_YY_20_final[1]);
lblCont_21.setText(MM_YY_21_final[1]);
lblCont_22.setText(MM_YY_22_final[1]);
lblCont_23.setText(MM_YY_23_final[1]);
lblCont_24.setText(MM_YY_24_final[1]);
}
}

Related

how to select first index in listview onCreate()? [duplicate]

This question already has answers here:
What is a NullPointerException, and how do I fix it?
(12 answers)
Closed 4 years ago.
I am trying to select the first index in listview on first load onCreate. I've try the listView.setSelection(0) but some error occur. this is my code...
public class QandAPractice extends AppCompatActivity {
String qsid;
ListView listView;
ArrayList<String> myqid;
RadioButton r1,r2,r3,r4;
String txtcontent, txtTimer,txtAnskey,txtImg, txtA, txtB, txtC, txtD, txtID;
private static final String TAG_QID = "id";
private static final String TAG_TITLE = "content";
private static final String TAG_TIMER = "timer";
private static final String TAG_IMAGE = "images";
private static final String TAG_QSID = "qsid";
private static final String TAG_KEY = "key";
private static final String TAG_A = "A";
private static final String TAG_B = "B";
private static final String TAG_C = "C";
private static final String TAG_D = "D";
ArrayList<HashMap<String, String>> questions;
Dialog quizDialog;
public int i = 60;
public int loadindex = 0;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_qand_apractice);
questions = new ArrayList<>();
myqid = new ArrayList<>();
Bundle b = getIntent().getExtras();
setTitle(b.getString("subject"));
qsid = b.getString("qsid");
quizDialog = new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen);
listView = findViewById(R.id.lvquestions);
getJSON(Constants.ROOT_URL+"mobile_question_index.php?qsid="+qsid);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
#Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
txtID = ((TextView) view.findViewById(R.id.quiz_id)).getText()
.toString();
txtcontent = ((TextView) view.findViewById(R.id.quiz_content)).getText()
.toString();
txtTimer = ((TextView) view.findViewById(R.id.quiz_timer)).getText()
.toString();
txtAnskey = ((TextView) view.findViewById(R.id.quiz_key)).getText()
.toString();
txtA = ((TextView) view.findViewById(R.id.quiz_A)).getText()
.toString();
txtB = ((TextView) view.findViewById(R.id.quiz_B)).getText()
.toString();
txtC = ((TextView) view.findViewById(R.id.quiz_C)).getText()
.toString();
txtD = ((TextView) view.findViewById(R.id.quiz_D)).getText()
.toString();
txtImg = ((TextView) view.findViewById(R.id.quiz_image)).getText()
.toString();
showQuiz();
}
});
listView.setSelection(0);
listView.getSelectedView().setSelected(true);
}
private void getJSON(final String urlWebService) {
class GetJSON extends AsyncTask<Void, Void, String> {
#Override
protected void onPreExecute() {
super.onPreExecute();
}
#Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
try {
loadIntoListView(s);
} catch (JSONException e) {
e.printStackTrace();
}
}
#Override
protected String doInBackground(Void... voids) {
try {
URL url = new URL(urlWebService);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
StringBuilder sb = new StringBuilder();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(con.getInputStream()));
String json;
while ((json = bufferedReader.readLine()) != null) {
sb.append(json + "\n");
}
return sb.toString().trim();
} catch (Exception e) {
return null;
}
}
}
GetJSON getJSON = new GetJSON();
getJSON.execute();
}
private void loadIntoListView(String json) throws JSONException {
JSONArray jsonArray = new JSONArray(json);
//String[] question = new String[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject obj = jsonArray.getJSONObject(i);
String id = obj.getString(TAG_QID);
String content = obj.getString(TAG_TITLE);
String image = obj.getString(TAG_IMAGE);
String a = obj.getString(TAG_A);
String b = obj.getString(TAG_B);
String c = obj.getString(TAG_C);
String d = obj.getString(TAG_D);
String key = obj.getString(TAG_KEY);
String timer = obj.getString(TAG_TIMER);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_QID,id);
map.put(TAG_TITLE,content);
map.put(TAG_IMAGE,image);
map.put(TAG_A,a);
map.put(TAG_B,b);
map.put(TAG_C,c);
map.put(TAG_D,d);
map.put(TAG_KEY,key);
map.put(TAG_TIMER,timer);
myqid.add(id);
questions.add(map);
}
// ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, question);
SimpleAdapter adapter = new SimpleAdapter(
QandAPractice.this, questions,
R.layout.quizlayout, new String[]{TAG_QID,
TAG_TITLE, TAG_IMAGE,TAG_A,TAG_B,TAG_C,TAG_D,TAG_KEY,TAG_TIMER},
new int[]{R.id.quiz_id, R.id.quiz_content, R.id.quiz_image,R.id.quiz_A,R.id.quiz_B,
R.id.quiz_C,R.id.quiz_D,R.id.quiz_key,R.id.quiz_timer});
/* AtomicReference<ListAdapter> la =
new AtomicReference<>(new ListAdapter(getApplicationContext(), questions));*/
listView.setAdapter(adapter);
}
this is the Error fetch in debug logcat..
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setSelected(boolean)' on a null object reference
at com.example.jhan08.engineeringexclusivereviewer.QandAPractice.onCreate(QandAPractice.java:90)
at android.app.Activity.performCreate(Activity.java:6351)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1114)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2470)
I've read some thread that has the same issue like mine. They use adapter to fix the issue but still in my case this error still occur. Any help is much appreciated.
Do Your Selection after you set Your Adapter to the Listview
private void loadIntoListView(String json) throws JSONException {
JSONArray jsonArray = new JSONArray(json);
//String[] question = new String[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject obj = jsonArray.getJSONObject(i);
String id = obj.getString(TAG_QID);
String content = obj.getString(TAG_TITLE);
String image = obj.getString(TAG_IMAGE);
String a = obj.getString(TAG_A);
String b = obj.getString(TAG_B);
String c = obj.getString(TAG_C);
String d = obj.getString(TAG_D);
String key = obj.getString(TAG_KEY);
String timer = obj.getString(TAG_TIMER);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_QID,id);
map.put(TAG_TITLE,content);
map.put(TAG_IMAGE,image);
map.put(TAG_A,a);
map.put(TAG_B,b);
map.put(TAG_C,c);
map.put(TAG_D,d);
map.put(TAG_KEY,key);
map.put(TAG_TIMER,timer);
myqid.add(id);
questions.add(map);
}
// ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, question);
SimpleAdapter adapter = new SimpleAdapter(
QandAPractice.this, questions,
R.layout.quizlayout, new String[]{TAG_QID,
TAG_TITLE, TAG_IMAGE,TAG_A,TAG_B,TAG_C,TAG_D,TAG_KEY,TAG_TIMER},
new int[]{R.id.quiz_id, R.id.quiz_content, R.id.quiz_image,R.id.quiz_A,R.id.quiz_B,
R.id.quiz_C,R.id.quiz_D,R.id.quiz_key,R.id.quiz_timer});
/* AtomicReference<ListAdapter> la =
new AtomicReference<>(new ListAdapter(getApplicationContext(), questions));*/
listView.setAdapter(adapter);
listView.setSelection(0);
listView.getSelectedView().setSelected(true);
}
I think I got the main issue you have faced. You try to select an item before populating the list view. You need to set this after adapter added on the listview.
Add this lines after adding the adapter.
listView.setAdapter(adapter);
listView.setSelection(0);
listView.getSelectedView().setSelected(true);
or use
listView.setAdapter(adapter);
listView.setItemChecked(0, true)
This will show a toast message for first opening. This should be added after the adapter set.
Iterator myVeryOwnIterator = questions.get(0).keySet().iterator();
while(myVeryOwnIterator.hasNext()) {
String key=(String)myVeryOwnIterator.next();
String value=(String)meMap.get(key);
Toast.makeText(ctx, "Key: "+key+" Value: "+value, Toast.LENGTH_LONG).show();
}

How to set default profile picture based on gender in android

I have two images male and female. I want to set image male if my gender is contains male and set image female if my gender is contains female.
The string gender is getting from JSON array.
Here is my code.
public class Profile extends AppCompatActivity {
JSONArray jsonarray = null;
JSONParser jsonParser = new JSONParser();
private static final String TAG_ID= "id";
private static final String TAG_PROFILE= "user";
private static final String TAG_NAME = "name";
private static final String TAG_MOB = "phn_number";
private static final String TAG_PER_ADD= "permanent_address";
private static final String TAG_PRE_ADD = "present_address";
private static final String TAG_OFF_ADD = "office_address";
private static final String TAG_MRG_ANN = "anniversary";
private static final String TAG_CITY = "city";
private static final String TAG_DOB = "dob";
private static final String TAG_NATIONALITY = "nationality";
private static final String TAG_OCC = "occupation";
private static final String TAG_MRG_STATUS = "martial_status";
private static final String TAG_GENDER = "gender";
private static final String TAG_NOY = "no_of_years";
private static String TAG_EMAIL = "email";
ListView list;
TextView name, mobile, permanent_add, present_add, office_add,mrg_anni,city,date_of_birth,nationality,occupation,mrd_status,gender,no_of_yr,email;
ArrayList<HashMap<String, String>> profile;
ImageView male,female;
private ProgressDialog pDialog;
String url = "http://app.goholidays.info/user_login.php";
String uid;
View view;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_profile);
profile = new ArrayList<HashMap<String, String>>();
list = (ListView) findViewById(android.R.id.list);
male = (ImageView) findViewById(R.id.profileimagemale);
female = (ImageView) findViewById(R.id.profileimagefemale);
name = (TextView) findViewById(R.id.name);
mobile = (TextView) findViewById(R.id.mob);
permanent_add = (TextView) findViewById(R.id.permanent_add);
present_add = (TextView) findViewById(R.id.present_add);
office_add = (TextView) findViewById(R.id.office_add);
mrg_anni = (TextView) findViewById(R.id.mrg_anni);
city = (TextView) findViewById(R.id.city);
date_of_birth = (TextView) findViewById(R.id.dob);
nationality = (TextView) findViewById(R.id.nationality);
occupation = (TextView) findViewById(R.id.o);
mrd_status = (TextView) findViewById(R.id.mrd_status);
gender = (TextView) findViewById(R.id.gender);
no_of_yr = (TextView) findViewById(R.id.no_of_years);
email = (TextView) findViewById(R.id.email);
new ReadJSON().execute();
}
private class ReadJSON extends AsyncTask<String, String, String> {
#Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(Profile.this);
pDialog.setMessage("Loading Profile ...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(false);
pDialog.show();
}
#Override
protected String doInBackground(String... param) {
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(Profile.this);
//String post_email = sp.getString("email", TAG_EMAIL);
String post_id = sp.getString("id",uid);
List<NameValuePair> params = new ArrayList<NameValuePair>();
//params.add(new BasicNameValuePair("email", post_email));
params.add(new BasicNameValuePair("id",post_id));
// getting JSON string from URL
JSONObject json = jsonParser.makeHttpRequest(url, "GET", params);
// Check your log cat for JSON response
try {
jsonarray = json.getJSONArray(TAG_PROFILE);
// looping through All Products
for (int i = 0; i < jsonarray.length(); i++) {
JSONObject jsonobject = jsonarray.getJSONObject(i);
// Storing each json item in variable
uid = jsonobject.getString(TAG_ID);
String name = jsonobject.getString(TAG_NAME);
String phn_number = jsonobject.getString(TAG_MOB);
String permanent_address = jsonobject.getString(TAG_PER_ADD);
String present_address = jsonobject.getString(TAG_PRE_ADD);
String office_address = jsonobject.getString(TAG_OFF_ADD);
String anniversary = jsonobject.getString(TAG_MRG_ANN);
String city = jsonobject.getString(TAG_CITY);
String dob = jsonobject.getString(TAG_DOB);
String nationality = jsonobject.getString(TAG_NATIONALITY);
String occupation = jsonobject.getString(TAG_OCC);
String martial_status = jsonobject.getString(TAG_MRG_STATUS);
final String gender = jsonobject.getString(TAG_GENDER);
String no_of_years = jsonobject.getString(TAG_NOY);
String email = jsonobject.getString(TAG_EMAIL);
// creating new HashMap
HashMap<String, String> contact = new HashMap<String, String>();
// adding each child node to HashMap key => value
contact.put(TAG_ID, uid);
contact.put(TAG_NAME, StringUtils.capitalize(name.toLowerCase().trim()));
contact.put(TAG_MOB, phn_number);
contact.put(TAG_PER_ADD, permanent_address);
contact.put(TAG_PRE_ADD, present_address);
contact.put(TAG_OFF_ADD, office_address);
contact.put(TAG_MRG_ANN, anniversary);
contact.put(TAG_CITY, city);
contact.put(TAG_DOB, dob);
contact.put(TAG_NATIONALITY, nationality);
contact.put(TAG_OCC, occupation);
contact.put(TAG_MRG_STATUS, StringUtils.capitalize(martial_status.toLowerCase().trim()));
contact.put(TAG_GENDER, StringUtils.capitalize(gender.toLowerCase().trim()));
runOnUiThread(new Runnable() {
#Override
public void run() {
if (gender.equalsIgnoreCase("male"))
{
male.setVisibility(View.VISIBLE);
female.setVisibility(View.INVISIBLE);
}else{
male.setVisibility(View.INVISIBLE);
female.setVisibility(View.VISIBLE);
}
}
});
contact.put(TAG_NOY, no_of_years+" Years");
contact.put(TAG_EMAIL, email);
// adding HashList to ArrayList
profile.add(contact);
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
#Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
runOnUiThread(new Runnable() {
public void run() {
ListAdapter adapter = new SimpleAdapter(
Profile.this, profile,
R.layout.newpage, new String[] {TAG_NAME, TAG_MOB, TAG_PER_ADD, TAG_PRE_ADD, TAG_OFF_ADD, TAG_MRG_ANN, TAG_CITY, TAG_DOB, TAG_NATIONALITY, TAG_OCC, TAG_MRG_STATUS, TAG_GENDER, TAG_NOY, TAG_EMAIL},
new int[] {R.id.name, R.id.mob, R.id.permanent_add, R.id.present_add, R.id.office_add, R.id.mrg_anni, R.id.city, R.id.dob, R.id.nationality, R.id.o, R.id.mrd_status, R.id.gender, R.id.no_of_years, R.id.email });
list.setAdapter(adapter);
}
});
//SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
//SharedPreferences.Editor editor = prefs.edit();
//editor.putString("id",uid);
//editor.commit();
pDialog.dismiss();
}
}
}
and my xml file
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1.2"
android:layout_gravity="center"
android:weightSum="1">
<RelativeLayout
android:layout_weight="1.2"
android:layout_width="match_parent"
android:layout_height="0dp">
<ImageView
android:layout_width="#dimen/_110sdp"
android:layout_height="#dimen/_121sdp"
android:src="#drawable/male"
android:id="#+id/profileimagemale"
android:contentDescription="#string/app_name" />
<ImageView
android:layout_width="#dimen/_110sdp"
android:layout_height="#dimen/_121sdp"
android:src="#drawable/female"
android:id="#+id/profileimagefemale"
android:contentDescription="#string/app_name" />
</RelativeLayout>
<View
android:id="#+id/view1"
android:layout_width="#dimen/_110sdp"
android:layout_height="#dimen/_1sdp"
android:layout_marginTop="#dimen/_2sdp"
android:background="#E6E6E6" />
<LinearLayout
android:id="#+id/ll11"
android:layout_width="#dimen/_110sdp"
android:layout_height="wrap_content"
android:layout_marginLeft="#dimen/_10sdp"
android:layout_marginTop="#dimen/_5sdp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SEX:"
android:gravity="center"/>
<TextView
android:textColor="#000"
android:layout_marginLeft="#dimen/_5sdp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="#+id/gender"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1.8"
android:layout_gravity="center">
<LinearLayout
android:id="#+id/ll01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="#dimen/_5sdp"
android:layout_marginRight="#dimen/_10sdp"
android:orientation="vertical">
<TextView
android:drawableLeft="#drawable/faculties"
android:drawablePadding="#dimen/_10sdp"
android:gravity="center"
android:textColor="#000"
android:hint="000"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="#+id/name"/>
</LinearLayout>
.........continued...................................
I am getting error nullpointerexception here is my logcat
FATAL EXCEPTION: main
java.lang.NullPointerException
at com.hotel.yasmeenshaikh.GoHolidays.Profile$ReadJSON$1.run(Profile.java:156)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4918)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:807)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:574)
at dalvik.system.NativeStart.main(Native Method)
Please help me solve this issue.
line number 156 is male.setVisibility(View.VISIBLE);
Call new ReadJSON().execute(); after all views are initialized. Because it is executed before your views initialization.
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_profile);
profile = new ArrayList<HashMap<String, String>>();
list = (ListView) findViewById(android.R.id.list);
male = (ImageView) findViewById(R.id.profileimagemale);
female = (ImageView) findViewById(R.id.profileimagefemale);
name = (TextView) findViewById(R.id.name);
mobile = (TextView) findViewById(R.id.mob);
permanent_add = (TextView) findViewById(R.id.permanent_add);
present_add = (TextView) findViewById(R.id.present_add);
office_add = (TextView) findViewById(R.id.office_add);
mrg_anni = (TextView) findViewById(R.id.mrg_anni);
city = (TextView) findViewById(R.id.city);
date_of_birth = (TextView) findViewById(R.id.dob);
nationality = (TextView) findViewById(R.id.nationality);
occupation = (TextView) findViewById(R.id.o);
mrd_status = (TextView) findViewById(R.id.mrd_status);
gender = (TextView) findViewById(R.id.gender);
no_of_yr = (TextView) findViewById(R.id.no_of_years);
email = (TextView) findViewById(R.id.email);
new ReadJSON().execute(); // Call here
}

Images inside a customadapter not updating like strings are to fill a listview

I'll try my best explaining whats happening, so my code has a forloop which fills a listview, this listview is showing all the correct data from a json file, excpet for the images, the images are always from the last position in the listview and then copied to the one above, for example here
This is one single activity which i just and to snippet to make it fit. I'm guessing its something to do with the strings which i create to make the images, they are somehow being used twice, and then used again to fill the listview, even though all of the other strings are being reset and filled when its gets the new information from the JSON. Heres my code if anyone would could tell me why this is only happening to the images and not the strings which create the names of items
String ChampionName;
String item2;
String item3;
String item4;
private String ItemName;
private String ItemName2;
private String ItemName3;
private String ItemName4;
private String ItemName5;
private String ItemName6;
private String ItemNameHW;
private String ItemName2HW;
private String ItemName3HW;
private String ItemName4HW;
private String ItemName5HW;
private String ItemName6HW;
private ListView Champ;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// http://api.champion.gg/champion/Ekko/
new JSONTask().execute("http://api.champion.gg/champion/aatrox/");
Champ = (ListView) findViewById(R.id.listView);
}
public class JSONTask extends AsyncTask<String, String, List<Layoutmodel>> {
#Override
protected List<Layoutmodel> doInBackground(String... params) {
HttpURLConnection connection = null;
BufferedReader reader = null;
try {
URL url = new URL(params[0]);
connection = (HttpURLConnection) url.openConnection();
connection.connect();
InputStream stream = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(stream));
StringBuilder buffer = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
String finalJson = buffer.toString();
JSONArray jsonarray = new JSONArray(finalJson);
List<Layoutmodel> LayoutModelList = new ArrayList<>();
//Number changes to what ever role you want it to be
//JSONObject finalObject = jsonarray.getJSONObject(jsonarray.length()-1);
for (int k = 0; k < jsonarray.length(); k++) {
JSONObject finalObject = jsonarray.getJSONObject(k);
Layoutmodel layoutmodel = new Layoutmodel();
layoutmodel.setChampionName2(finalObject.getString("key"));
layoutmodel.setRole(finalObject.getString("role"));
ChampionName = finalObject.getString("key");
String role = finalObject.getString("role");
String overallPosition = finalObject.getString("overallPosition");
JSONObject ItemArray4 = new JSONObject(overallPosition);
String champpos = ItemArray4.getString("position");
String items = finalObject.getString("items");
JSONObject ItemArray = new JSONObject(items);
item2 = ItemArray.getString("mostGames");
item3 = ItemArray.getString("highestWinPercent");
JSONObject ItemArray2 = new JSONObject(item2);
JSONObject ItemArray3 = new JSONObject(item3);
item3 = ItemArray2.getString("items");
item4 = ItemArray3.getString("items");
JSONArray jsonarray2 = new JSONArray(item3);
JSONArray jsonarray3 = new JSONArray(item4);
JSONObject finalObject2 = jsonarray2.getJSONObject(jsonarray2.length() - 6);
ItemName = finalObject2.getString("name");
JSONObject finalObject3 = jsonarray2.getJSONObject(jsonarray2.length() - 5);
ItemName2 = finalObject3.getString("name");
JSONObject finalObject4 = jsonarray2.getJSONObject(jsonarray2.length() - 4);
ItemName3 = finalObject4.getString("name");
JSONObject finalObject5 = jsonarray2.getJSONObject(jsonarray2.length() - 3);
ItemName4 = finalObject5.getString("name");
JSONObject finalObject6 = jsonarray2.getJSONObject(jsonarray2.length() - 2);
ItemName5 = finalObject6.getString("name");
JSONObject finalObject7 = jsonarray2.getJSONObject(jsonarray2.length() - 1);
ItemName6 = finalObject7.getString("name");
//Highest win names
JSONObject finalObject8 = jsonarray3.getJSONObject(jsonarray3.length() - 6);
ItemNameHW = finalObject8.getString("name");
JSONObject finalObject9 = jsonarray3.getJSONObject(jsonarray3.length() - 5);
ItemName2HW = finalObject9.getString("name");
JSONObject finalObject10 = jsonarray3.getJSONObject(jsonarray3.length() - 4);
ItemName3HW = finalObject10.getString("name");
JSONObject finalObject11 = jsonarray3.getJSONObject(jsonarray3.length() - 3);
ItemName4HW = finalObject11.getString("name");
JSONObject finalObject12 = jsonarray3.getJSONObject(jsonarray3.length() - 2);
ItemName5HW = finalObject12.getString("name");
JSONObject finalObject13 = jsonarray3.getJSONObject(jsonarray3.length() - 1);
ItemName6HW = finalObject13.getString("name");
layoutmodel.setItem1(ItemName);
layoutmodel.setItem2(ItemName2);
layoutmodel.setItem3(ItemName3);
layoutmodel.setItem4(ItemName4);
layoutmodel.setItem5(ItemName5);
layoutmodel.setItem6(ItemName6);
layoutmodel.setItem1HW(ItemNameHW);
layoutmodel.setItem2HW(ItemName2HW);
layoutmodel.setItem3HW(ItemName3HW);
layoutmodel.setItem4HW(ItemName4HW);
layoutmodel.setItem5HW(ItemName5HW);
layoutmodel.setItem6HW(ItemName6HW);
layoutmodel.setRole(role);
layoutmodel.setChampionName2(ChampionName);
layoutmodel.setChamppos(champpos);
LayoutModelList.add(layoutmodel);
}
return LayoutModelList;
} catch (JSONException | IOException e) {
e.printStackTrace();
} finally {
if (connection != null) {
connection.disconnect();
}
try {
if (reader != null) {
reader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
#Override
protected void onPostExecute(List<Layoutmodel> result) {
super.onPostExecute(result);
LayoutAdapter adapter2 = new LayoutAdapter(getApplicationContext(), R.layout.rows, result);
Champ.setAdapter(adapter2);
}
}
public class LayoutAdapter extends ArrayAdapter {
private List<Layoutmodel> LayoutModelList2;
private int resource;
private LayoutInflater inflater;
public LayoutAdapter(Context context2, int resource, List<Layoutmodel> objects) {
super(context2, resource, objects);
LayoutModelList2 = objects;
this.resource = resource;
inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
}
#Override
public View getView(int position2, View convertView2, ViewGroup parent2) {
ViewHolder holder = null;
if (convertView2 == null) {
holder = new ViewHolder();
convertView2 = inflater.inflate(resource, null);
holder.nameofchamp = (TextView) convertView2.findViewById(R.id.textView);
holder.position = (TextView) convertView2.findViewById(R.id.smalltxt);
holder.Champposition = (TextView) convertView2.findViewById(R.id.textView17);
String ItemNameInLowerCase;
String ItemName2InLowerCase;
String ItemName3InLowerCase;
String ItemName4InLowerCase;
String ItemName5InLowerCase;
String ItemName6InLowerCase;
String ItemName2InLowerCaseHW;
String ItemName3InLowerCaseHW;
String ItemName4InLowerCaseHW;
String ItemName5InLowerCaseHW;
String ItemName6InLowerCaseHW;
holder.Champitemimg1 = (ImageView) convertView2.findViewById(R.id.imageView7);
holder.Champitemimg2 = (ImageView) convertView2.findViewById(R.id.imageView6);
holder.Champitemimg3 = (ImageView) convertView2.findViewById(R.id.imageView5);
holder.Champitemimg4 = (ImageView) convertView2.findViewById(R.id.imageView4);
holder.Champitemimg5 = (ImageView) convertView2.findViewById(R.id.imageView3);
holder.Champitemimg6 = (ImageView) convertView2.findViewById(R.id.imageView2);
holder.Champitemimg1HW = (ImageView) convertView2.findViewById(R.id.imageView8);
holder.Champitemimg2HW = (ImageView) convertView2.findViewById(R.id.imageView9);
holder.Champitemimg3HW = (ImageView) convertView2.findViewById(R.id.imageView10);
holder.Champitemimg4HW = (ImageView) convertView2.findViewById(R.id.imageView11);
holder.Champitemimg5HW = (ImageView) convertView2.findViewById(R.id.imageView12);
holder.Champitemimg6HW = (ImageView) convertView2.findViewById(R.id.imageView13);
ImageView imgtesta;
String ChampionNameinlower;
imgtesta = (ImageView) convertView2.findViewById(R.id.imageView);
ChampionNameinlower = ChampionName.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
int id10 = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ChampionNameinlower + "_square_0", null, null);
imgtesta.setImageResource(id10);
holder.champitem1 = (TextView) convertView2.findViewById(R.id.textView9);
holder.champitem2 = (TextView) convertView2.findViewById(R.id.textView8);
holder.champitem3 = (TextView) convertView2.findViewById(R.id.textView7);
holder.champitem4 = (TextView) convertView2.findViewById(R.id.textView6);
holder.champitem5 = (TextView) convertView2.findViewById(R.id.textView5);
holder.champitem6 = (TextView) convertView2.findViewById(R.id.textView4);
holder.champitem1HW = (TextView) convertView2.findViewById(R.id.textView10);
holder.champitem2HW = (TextView) convertView2.findViewById(R.id.textView11);
holder.champitem3HW = (TextView) convertView2.findViewById(R.id.textView12);
holder.champitem4HW = (TextView) convertView2.findViewById(R.id.textView13);
holder.champitem5HW = (TextView) convertView2.findViewById(R.id.textView14);
holder.champitem6HW = (TextView) convertView2.findViewById(R.id.textView15);
holder.nameofchamp.setText(LayoutModelList2.get(position2).getChampionName2());
holder.position.setText(LayoutModelList2.get(position2).getRole());
holder.Champposition.setText(LayoutModelList2.get(position2).getChamppos());
holder.champitem1.setText(LayoutModelList2.get(position2).getItem1());
holder.champitem2.setText(LayoutModelList2.get(position2).getItem2());
holder.champitem3.setText(LayoutModelList2.get(position2).getItem3());
holder.champitem4.setText(LayoutModelList2.get(position2).getItem4());
holder.champitem5.setText(LayoutModelList2.get(position2).getItem5());
holder.champitem6.setText(LayoutModelList2.get(position2).getItem6());
holder.champitem1HW.setText(LayoutModelList2.get(position2).getItem1HW());
holder.champitem2HW.setText(LayoutModelList2.get(position2).getItem2HW());
holder.champitem3HW.setText(LayoutModelList2.get(position2).getItem3HW());
holder.champitem4HW.setText(LayoutModelList2.get(position2).getItem4HW());
holder.champitem5HW.setText(LayoutModelList2.get(position2).getItem5HW());
holder.champitem6HW.setText(LayoutModelList2.get(position2).getItem6HW());
ItemNameInLowerCase = ItemName.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName2InLowerCase = ItemName2.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName3InLowerCase = ItemName3.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName4InLowerCase = ItemName4.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName5InLowerCase = ItemName5.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName6InLowerCase = ItemName6.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
String itemNameInLowerCaseHW = ItemNameHW.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName2InLowerCaseHW = ItemName2HW.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName3InLowerCaseHW = ItemName3HW.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName4InLowerCaseHW = ItemName4HW.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName5InLowerCaseHW = ItemName5HW.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName6InLowerCaseHW = ItemName6HW.toLowerCase().replaceAll("'", "").replaceAll(" ", "");
int id = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemNameInLowerCase, null, null);
holder.Champitemimg1.setImageResource(id);
int id2 = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName2InLowerCase, null, null);
holder.Champitemimg2.setImageResource(id2);
int id3 = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName3InLowerCase, null, null);
holder.Champitemimg3.setImageResource(id3);
int id4 = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName4InLowerCase, null, null);
holder.Champitemimg4.setImageResource(id4);
int id5 = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName5InLowerCase, null, null);
holder.Champitemimg5.setImageResource(id5);
int id6 = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName6InLowerCase, null, null);
holder.Champitemimg6.setImageResource(id6);
int idHW = getResources().getIdentifier("com.example.kripzy.url:drawable/" + itemNameInLowerCaseHW, null, null);
holder.Champitemimg1HW.setImageResource(idHW);
int id2HW = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName2InLowerCaseHW, null, null);
holder.Champitemimg2HW.setImageResource(id2HW);
int id3HW = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName3InLowerCaseHW, null, null);
holder.Champitemimg3HW.setImageResource(id3HW);
int id4HW = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName4InLowerCaseHW, null, null);
holder.Champitemimg4HW.setImageResource(id4HW);
int id5HW = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName5InLowerCaseHW, null, null);
holder.Champitemimg5HW.setImageResource(id5HW);
int id6HW = getResources().getIdentifier("com.example.kripzy.url:drawable/" + ItemName6InLowerCaseHW, null, null);
holder.Champitemimg6HW.setImageResource(id6HW);
convertView2.setTag(holder);
}
else{
holder = (ViewHolder) convertView2.getTag();
}
return convertView2;
}
Newly added holder;
TextView nameofchamp;
TextView position;
TextView Champposition;
TextView champitem1;
TextView champitem2;
TextView champitem3;
TextView champitem4;
TextView champitem5;
TextView champitem6;
TextView champitem1HW;
TextView champitem2HW;
TextView champitem3HW;
TextView champitem4HW;
TextView champitem5HW;
TextView champitem6HW;
ImageView Champitemimg1;
ImageView Champitemimg2;
ImageView Champitemimg3;
ImageView Champitemimg4;
ImageView Champitemimg5;
ImageView Champitemimg6;
ImageView Champitemimg1HW;
ImageView Champitemimg2HW;
ImageView Champitemimg3HW;
ImageView Champitemimg4HW;
ImageView Champitemimg5HW;
ImageView Champitemimg6HW;
}
}
When i put a log.v at the bottom of the code, it always replies this
05-21 14:41:40.646 4536-4536/com.example.kripzy.url V/Where is my error: enchantment:bloodrazor
05-21 14:41:40.659 4536-4536/com.example.kripzy.url V/Where is my error: enchantment:bloodrazor
So what i was doing wrong was i was just using a string which just contained the information from the last entry on the listview, hence why it was only showing the images from it, so to fix this i had to change it to the following;
ItemNameInLowerCase = holder.champitem1.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName2InLowerCase = holder.champitem2.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName3InLowerCase = holder.champitem3.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName4InLowerCase = holder.champitem4.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName5InLowerCase = holder.champitem5.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName6InLowerCase = holder.champitem6.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemNameInLowerCaseHW = holder.champitem1HW.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName2InLowerCaseHW = holder.champitem2HW.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName3InLowerCaseHW = holder.champitem3HW.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName4InLowerCaseHW = holder.champitem4HW.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName5InLowerCaseHW = holder.champitem5HW.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");
ItemName6InLowerCaseHW = holder.champitem6HW.getText().toString().toLowerCase().replaceAll("'", "").replaceAll(" ", "");

setTextColor in onpostexecute() from another xml (R.layout.list_item) Asynctask

I want to change the color of the text depending on the value from php jsonobject. The program can already get the value and able to display it on each textview. But my problem is, how can I change the color of each text view at the same time, depending on the Flimitstat, Vlimitstat and Climitstat. Hope you can help me!
This is my ThirdFragment.java
package com.example.RadarOperationMonitoringSystem;
import android.app.ProgressDialog;
import android.graphics.Color;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListAdapter;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
public class ThirdFragment extends ListFragment {
String site1 = "";
String freq1 = "";
String curr1 = "";
String volts1 = "";
String fstat1 = "";
String vstat1 = "";
String cstat1 = "";
String site2 = "";
String freq2 = "";
String curr2 = "";
String volts2 = "";
String fstat2 = "";
String vstat2 = "";
String cstat2 = "";
String site3 = "";
String freq3 = "";
String curr3 = "";
String volts3 = "";
String fstat3 = "";
String vstat3 = "";
String cstat3 = "";
String site4 = "";
String freq4 = "";
String curr4 = "";
String volts4 = "";
String fstat4 = "";
String vstat4 = "";
String cstat4 = "";
String site5 = "";
String freq5 = "";
String curr5 = "";
String volts5 = "";
String fstat5 = "";
String vstat5 = "";
String cstat5 = "";
String site6 = "";
String freq6 = "";
String curr6 = "";
String volts6 = "";
String fstat6 = "";
String vstat6 = "";
String cstat6 = "";
String site7 = "";
String freq7 = "";
String curr7 = "";
String volts7 = "";
String fstat7 = "";
String vstat7 = "";
String cstat7 = "";
ArrayList<HashMap<String, String>> contactList = new ArrayList<HashMap<String, String>>();
TextView freqa;
TextView voltsa;
TextView curra;
TextView freqb;
TextView voltsb;
TextView currb;
TextView freqc;
TextView voltsc;
TextView currc;
TextView freqd;
TextView voltsd;
TextView currd;
TextView freqe;
TextView voltse;
TextView curre;
TextView freqf;
TextView voltsf;
TextView currf;
TextView freqg;
TextView voltsg;
TextView currg;
#Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.third_frag, container, false);
freqa = (TextView)v.findViewById(R.id.frequency1);
voltsa = (TextView)v.findViewById(R.id.acvoltage1);
curra = (TextView)v.findViewById(R.id.accurrent1);
freqb = (TextView)v.findViewById(R.id.frequency2);
voltsb = (TextView)v.findViewById(R.id.acvoltage2);
currb = (TextView)v.findViewById(R.id.accurrent2);
freqc = (TextView)v.findViewById(R.id.frequency3);
voltsc = (TextView)v.findViewById(R.id.acvoltage3);
currc = (TextView)v.findViewById(R.id.accurrent3);
freqd = (TextView)v.findViewById(R.id.frequency4);
voltsd = (TextView)v.findViewById(R.id.acvoltage4);
currd = (TextView)v.findViewById(R.id.accurrent4);
freqe = (TextView)v.findViewById(R.id.frequency5);
voltse = (TextView)v.findViewById(R.id.acvoltage5);
curre = (TextView)v.findViewById(R.id.accurrent5);
freqf = (TextView)v.findViewById(R.id.frequency6);
voltsf = (TextView)v.findViewById(R.id.acvoltage6);
currf = (TextView)v.findViewById(R.id.accurrent6);
freqg = (TextView)v.findViewById(R.id.frequency7);
voltsg = (TextView)v.findViewById(R.id.acvoltage7);
currg = (TextView)v.findViewById(R.id.accurrent7);
new GetContacts().execute();
return v;
}
public class GetContacts extends AsyncTask<Void, Void, Void> {
private ProgressDialog pDialog;
// URL to get contacts JSON
private static final String url = "http://10.0.2.2/radaroperations/energyreadings.php";
private static final String TAG_SITENAME1 = "siteName1";
private static final String TAG_FREQUENCY1 = "Frequency1";
private static final String TAG_ACCURRENT1 = "AC_Voltage1";
private static final String TAG_ACVOLTAGE1 = "AC_Current1";
private static final String TAG_FSTAT1 = "Flimitstat1";
private static final String TAG_VSTAT1 = "Vlimitstat1";
private static final String TAG_CSTAT1 = "Climitstat1";
private static final String TAG_SITENAME2 = "siteName2";
private static final String TAG_FREQUENCY2 = "Frequency2";
private static final String TAG_ACCURRENT2 = "AC_Voltage2";
private static final String TAG_ACVOLTAGE2 = "AC_Current2";
private static final String TAG_FSTAT2 = "Flimitstat2";
private static final String TAG_VSTAT2 = "Vlimitstat2";
private static final String TAG_CSTAT2 = "Climitstat2";
private static final String TAG_SITENAME3 = "siteName3";
private static final String TAG_FREQUENCY3 = "Frequency3";
private static final String TAG_ACCURRENT3 = "AC_Voltage3";
private static final String TAG_ACVOLTAGE3 = "AC_Current3";
private static final String TAG_FSTAT3 = "Flimitstat3";
private static final String TAG_VSTAT3 = "Vlimitstat3";
private static final String TAG_CSTAT3 = "Climitstat3";
private static final String TAG_SITENAME4 = "siteName4";
private static final String TAG_FREQUENCY4 = "Frequency4";
private static final String TAG_ACCURRENT4 = "AC_Voltage4";
private static final String TAG_ACVOLTAGE4 = "AC_Current4";
private static final String TAG_FSTAT4 = "Flimitstat4";
private static final String TAG_VSTAT4 = "Vlimitstat4";
private static final String TAG_CSTAT4 = "Climitstat4";
private static final String TAG_SITENAME5 = "siteName5";
private static final String TAG_FREQUENCY5 = "Frequency5";
private static final String TAG_ACCURRENT5 = "AC_Voltage5";
private static final String TAG_ACVOLTAGE5 = "AC_Current5";
private static final String TAG_FSTAT5 = "Flimitstat5";
private static final String TAG_VSTAT5 = "Vlimitstat5";
private static final String TAG_CSTAT5 = "Climitstat5";
private static final String TAG_SITENAME6 = "siteName6";
private static final String TAG_FREQUENCY6 = "Frequency6";
private static final String TAG_ACCURRENT6 = "AC_Voltage6";
private static final String TAG_ACVOLTAGE6 = "AC_Current6";
private static final String TAG_FSTAT6 = "Flimitstat6";
private static final String TAG_VSTAT6 = "Vlimitstat6";
private static final String TAG_CSTAT6 = "Climitstat6";
private static final String TAG_SITENAME7 = "siteName7";
private static final String TAG_FREQUENCY7 = "Frequency7";
private static final String TAG_ACCURRENT7 = "AC_Voltage7";
private static final String TAG_ACVOLTAGE7 = "AC_Current7";
private static final String TAG_FSTAT7 = "Flimitstat7";
private static final String TAG_VSTAT7 = "Vlimitstat7";
private static final String TAG_CSTAT7 = "Climitstat7";
// contacts JSONArray
JSONObject c = null;
#Override
protected void onPreExecute() {
super.onPreExecute();
// Showing progress dialog
pDialog = new ProgressDialog(getActivity());
pDialog.setMessage("Please wait...");
pDialog.setCancelable(false);
pDialog.show();
}
#Override
public Void doInBackground(Void... arg0) {
// Creating service handler class instance
ServiceHandler sh = new ServiceHandler();
// Making a request to url and getting response
String jsonStr = sh.makeServiceCall(url, ServiceHandler.GET);
Log.d("Response: ", "> " + jsonStr);
if (jsonStr != null) {
try {
JSONObject c = new JSONObject(jsonStr);
// Getting JSON Array node
site1 = c.getString(TAG_SITENAME1);
freq1 = c.getString(TAG_FREQUENCY1);
curr1 = c.getString(TAG_ACCURRENT1);
volts1 = c.getString(TAG_ACVOLTAGE1);
fstat1 = c.getString(TAG_FSTAT1);
vstat1 = c.getString(TAG_VSTAT1);
cstat1 = c.getString(TAG_CSTAT1);
site2 = c.getString(TAG_SITENAME2);
freq2 = c.getString(TAG_FREQUENCY2);
curr2 = c.getString(TAG_ACCURRENT2);
volts2 = c.getString(TAG_ACVOLTAGE2);
fstat2 = c.getString(TAG_FSTAT2);
vstat2 = c.getString(TAG_VSTAT2);
cstat2 = c.getString(TAG_CSTAT2);
site3 = c.getString(TAG_SITENAME3);
freq3 = c.getString(TAG_FREQUENCY3);
curr3 = c.getString(TAG_ACCURRENT3);
volts3 = c.getString(TAG_ACVOLTAGE3);
fstat3 = c.getString(TAG_FSTAT3);
vstat3 = c.getString(TAG_VSTAT3);
cstat3 = c.getString(TAG_CSTAT3);
site4 = c.getString(TAG_SITENAME4);
freq4 = c.getString(TAG_FREQUENCY4);
curr4 = c.getString(TAG_ACCURRENT4);
volts4 = c.getString(TAG_ACVOLTAGE4);
fstat4 = c.getString(TAG_FSTAT4);
vstat4 = c.getString(TAG_VSTAT4);
cstat4 = c.getString(TAG_CSTAT4);
site5 = c.getString(TAG_SITENAME5);
freq5 = c.getString(TAG_FREQUENCY5);
curr5 = c.getString(TAG_ACCURRENT5);
volts5 = c.getString(TAG_ACVOLTAGE5);
fstat5 = c.getString(TAG_FSTAT5);
vstat5 = c.getString(TAG_VSTAT5);
cstat5 = c.getString(TAG_CSTAT5);
site6 = c.getString(TAG_SITENAME6);
freq6 = c.getString(TAG_FREQUENCY6);
curr6 = c.getString(TAG_ACCURRENT6);
volts6 = c.getString(TAG_ACVOLTAGE6);
fstat6 = c.getString(TAG_FSTAT6);
vstat6 = c.getString(TAG_VSTAT6);
cstat6 = c.getString(TAG_CSTAT6);
site7 = c.getString(TAG_SITENAME7);
freq7 = c.getString(TAG_FREQUENCY7);
curr7 = c.getString(TAG_ACCURRENT7);
volts7 = c.getString(TAG_ACVOLTAGE7);
fstat7 = c.getString(TAG_FSTAT7);
vstat7 = c.getString(TAG_VSTAT7);
cstat7 = c.getString(TAG_CSTAT7);
// tmp hashmap for single contact
HashMap<String, String> contact = new HashMap<String, String>();
// adding each child node to HashMap key => value
contact.put(TAG_SITENAME1, site1);
contact.put(TAG_FREQUENCY1, freq1);
contact.put(TAG_ACCURRENT1, curr1);
contact.put(TAG_ACVOLTAGE1, volts1);
contact.put(TAG_FSTAT1, fstat1);
contact.put(TAG_VSTAT1, vstat1);
contact.put(TAG_CSTAT1, cstat1);
contact.put(TAG_SITENAME2, site2);
contact.put(TAG_FREQUENCY2, freq2);
contact.put(TAG_ACCURRENT2, curr2);
contact.put(TAG_ACVOLTAGE2, volts2);
contact.put(TAG_FSTAT2, fstat2);
contact.put(TAG_VSTAT2, vstat2);
contact.put(TAG_CSTAT2, cstat2);
contact.put(TAG_SITENAME3, site3);
contact.put(TAG_FREQUENCY3, freq3);
contact.put(TAG_ACCURRENT3, curr3);
contact.put(TAG_ACVOLTAGE3, volts3);
contact.put(TAG_FSTAT3, fstat3);
contact.put(TAG_VSTAT3, vstat3);
contact.put(TAG_CSTAT3, cstat3);
contact.put(TAG_SITENAME4, site4);
contact.put(TAG_FREQUENCY4, freq4);
contact.put(TAG_ACCURRENT4, curr4);
contact.put(TAG_ACVOLTAGE4, volts4);
contact.put(TAG_FSTAT4, fstat4);
contact.put(TAG_VSTAT4, vstat4);
contact.put(TAG_CSTAT4, cstat4);
contact.put(TAG_SITENAME5, site5);
contact.put(TAG_FREQUENCY5, freq5);
contact.put(TAG_ACCURRENT5, curr5);
contact.put(TAG_ACVOLTAGE5, volts5);
contact.put(TAG_FSTAT5, fstat5);
contact.put(TAG_VSTAT5, vstat5);
contact.put(TAG_CSTAT5, cstat5);
contact.put(TAG_SITENAME6, site6);
contact.put(TAG_FREQUENCY6, freq6);
contact.put(TAG_ACCURRENT6, curr6);
contact.put(TAG_ACVOLTAGE6, volts6);
contact.put(TAG_FSTAT6, fstat6);
contact.put(TAG_VSTAT6, vstat6);
contact.put(TAG_CSTAT6, cstat6);
contact.put(TAG_SITENAME7, site7);
contact.put(TAG_FREQUENCY7, freq7);
contact.put(TAG_ACCURRENT7, curr7);
contact.put(TAG_ACVOLTAGE7, volts7);
contact.put(TAG_FSTAT7, fstat7);
contact.put(TAG_VSTAT7, vstat7);
contact.put(TAG_CSTAT7, cstat7);
// adding contact to contact list
contactList.clear();
contactList.add(contact);
} catch (JSONException e) {
e.printStackTrace();
}
}else {
Log.e("ServiceHandler", "Couldn't get any data from the url");
}
return null;
}
#Override
public void onPostExecute(Void result) {
super.onPostExecute(result);
// Dismiss the progress dialog
if (pDialog.isShowing())
pDialog.dismiss();
/**
*
*/
//RADAR 1
//Frequency 1 status
if (TAG_FSTAT1.equals("1")){
freqa.setTextColor(Color.GREEN);
}
else if(TAG_FSTAT1.equals("2")){
freqa.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 1 status
if (TAG_VSTAT1.equals("1")){
voltsa.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT1.equals("2")){
voltsa.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 1 status
if (TAG_CSTAT1.equals("1")){
curra.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT1.equals("2")){
curra.setTextColor(getResources().getColor(R.color.red));
}
//RADAR 2
//Frequency 2 status
if (TAG_FSTAT2.equals("1")){
freqb.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_FSTAT2.equals("2")){
freqb.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 2 status
if (TAG_VSTAT2.equals("1")){
voltsb.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT2.equals("2")){
voltsb.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 2 status
if (TAG_CSTAT2.equals("1")){
currb.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT2.equals("2")){
currb.setTextColor(getResources().getColor(R.color.red));
}
//RADAR 3
//Frequency 3 status
if (TAG_FSTAT3.equals("1")){
freqc.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_FSTAT3.equals("2")){
freqc.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 3 status
if (TAG_VSTAT3.equals("1")){
voltsc.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT3.equals("2")){
voltsc.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 3 status
if (TAG_CSTAT3.equals("1")){
currc.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT3.equals("2")){
currc.setTextColor(getResources().getColor(R.color.red));
}
//RADAR 4
//Frequency 4 status
if (TAG_FSTAT4.equals("1")){
freqd.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_FSTAT4.equals("2")){
freqd.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 4 status
if (TAG_VSTAT4.equals("1")){
voltsd.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT4.equals("2")){
voltsd.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 4 status
if (TAG_CSTAT4.equals("1")){
currd.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT4.equals("2")){
currd.setTextColor(getResources().getColor(R.color.red));
}
//RADAR 5
//Frequency 5 status
if (TAG_FSTAT5.equals("1")){
freqe.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_FSTAT5.equals("2")){
freqe.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 5 status
if (TAG_VSTAT5.equals("1")){
voltse.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT5.equals("2")){
voltse.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 5 status
if (TAG_CSTAT5.equals("1")){
curre.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT5.equals("2")){
curre.setTextColor(getResources().getColor(R.color.red));
}
//RADAR 6
//Frequency 6 status
if (TAG_FSTAT6.equals("1")){
freqf.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_FSTAT6.equals("2")){
freqf.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 6 status
if (TAG_VSTAT6.equals("1")){
voltsf.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT6.equals("2")){
voltsf.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 6 status
if (TAG_CSTAT6.equals("1")){
currf.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT6.equals("2")){
currf.setTextColor(getResources().getColor(R.color.red));
}
//RADAR 7
//Frequency 7 status
if (TAG_FSTAT7.equals("1")){
freqg.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_FSTAT7.equals("2")){
freqg.setTextColor(getResources().getColor(R.color.red));
}
//AC_Voltage 7 status
if (TAG_VSTAT7.equals("1")){
voltsg.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_VSTAT7.equals("2")){
voltsg.setTextColor(getResources().getColor(R.color.red));
}
//AC_Current 7 status
if (TAG_CSTAT7.equals("1")){
currg.setTextColor(getResources().getColor(R.color.green));
}
else if(TAG_CSTAT7.equals("2")){
currg.setTextColor(getResources().getColor(R.color.red));
}
ListAdapter adapter = new SimpleAdapter(
getActivity(), contactList,
R.layout.list_item, new String[] { TAG_SITENAME1, TAG_FREQUENCY1, TAG_ACCURRENT1,
TAG_ACVOLTAGE1,TAG_SITENAME2, TAG_FREQUENCY2, TAG_ACCURRENT2,
TAG_ACVOLTAGE2,TAG_SITENAME3, TAG_FREQUENCY3, TAG_ACCURRENT3,
TAG_ACVOLTAGE3, TAG_SITENAME4, TAG_FREQUENCY4, TAG_ACCURRENT4,
TAG_ACVOLTAGE4, TAG_SITENAME5, TAG_FREQUENCY5, TAG_ACCURRENT5,
TAG_ACVOLTAGE5, TAG_SITENAME6, TAG_FREQUENCY6, TAG_ACCURRENT6,
TAG_ACVOLTAGE6, TAG_SITENAME7, TAG_FREQUENCY7, TAG_ACCURRENT7,
TAG_ACVOLTAGE7},
new int[] { R.id.sitename1, R.id.frequency1,
R.id.accurrent1, R.id.acvoltage1, R.id.sitename2, R.id.frequency2,
R.id.accurrent2, R.id.acvoltage2, R.id.sitename3, R.id.frequency3,
R.id.accurrent3, R.id.acvoltage3, R.id.sitename4, R.id.frequency4,
R.id.accurrent4, R.id.acvoltage4, R.id.sitename5, R.id.frequency5,
R.id.accurrent5, R.id.acvoltage5, R.id.sitename6, R.id.frequency6,
R.id.accurrent6, R.id.acvoltage6, R.id.sitename7, R.id.frequency7,
R.id.accurrent7, R.id.acvoltage7});
// updating listviews
setListAdapter(adapter);
}
}
public static ThirdFragment newInstance(String text) {
ThirdFragment f = new ThirdFragment();
Bundle b = new Bundle();
b.putString("msg", text);
f.setArguments(b);
return f;
}
}
You can check my listadapter and i have implemented the same concept to set the text color in two ways
private class CustomerAdapter extends ArrayAdapter<RouteTrackerUser>
{
Context context;
int textViewResourceId;
private ArrayList<RouteTrackerUser> originalitems;
public CustomerAdapter(Context context, int textViewResourceId, ArrayList<RouteTrackerUser> items) {
super(context, textViewResourceId, items);
this.textViewResourceId = textViewResourceId;
this.context = context;
this.originalitems = items;
}
#Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
v = inflater.inflate(textViewResourceId, parent, false);
}
final RouteTrackerUser r = originalitems.get(position);
if (r != null) {
TextView textName= (TextView) v.findViewById(R.id.sname);
TextView postal=(TextView) v.findViewById(R.id.postal);
if(r.getVisited().equals("true"))
{
if(textName != null)
{
textName.setTextColor(getResources().getColor(R.color.lightpurple));
textName.setText(r.getStorename());
}
if(postal != null)
{
postal.setTextColor(getResources().getColor(R.color.lightpurple));
postal.setText("Address: "+r.getPostalcode());
}
}
if(r.getVisited().equals("false"))
{
if(textName != null)
{
textName.setTextColor(getResources().getColor(R.color.darkpurple));
textName.setText(r.getStorename());
}
if(postal != null)
{
postal.setTextColor(getResources().getColor(R.color.darkpurple));
postal.setText("Address: "+r.getPostalcode());
}
}
if(RouteTrackerApp.sharedPreference.getInt(RouteTrackerApp.SHARED_ACCESS_UTYPE, 0) == Constants.VAR_TYPE_SALES_PERSON){
v.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
viewdata(r.getUsername(),r.getStoreid(),r.getAccountid(),r.getUid(),r.getVisitplanid(),r.getVisited(),r.getStorename());
}});
}
}
return v;
}
}
and on PostExecute i called this adapter like
protected void onPostExecute(ArrayList<RouteTrackerUser> result)
{
if(result!=null)
{
// System.out.println("User with result===>"+result);
/*for(RouteTrackerUser r :result ){
System.out.println("StoreName===>"+r.getStorename());}*/
Intent intent=getIntent();
TextView username=(TextView)findViewById(R.id.usrname);
final String sname=intent.getExtras().getString("user_name");
username.setText("Welcome, "+sname);
TextView todayvisits=(TextView)findViewById(R.id.todaylist);
todayvisits.setText("TODAY'S STORE VISITS");
userAdapter = new CustomerAdapter(ViewYourPlanList.this, R.layout.view_your_plan_list,result);
userList = (ListView) findViewById(R.id.listview);
userList.setItemsCanFocus(false);
userList.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
userList.setAdapter(userAdapter);
dialog.dismiss();
}
else
if you are want to implement in listfragment ! Design a customadapter and set the text color like i shown below and call this customadapter on postexecute.
public class CustomAdapter extends ArrayAdapter<Model> {
private final LayoutInflater mInflater;
public CustomAdapter(Context context) {
super(context, android.R.layout.simple_list_item_2);
mInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public void setData(List<Model> data) {
clear();
if (data != null) {
for (Model appEntry : data) {
System.out.println("cust adptr set data: "+appEntry.getStorename());
add(appEntry);
}
}
}
/**
* Populate new items in the list.
*/
#SuppressLint("SimpleDateFormat")
#Override public View getView(int position, View convertView, ViewGroup parent) {
View view;
if (convertView == null) {
view = mInflater.inflate(R.layout.view_your_plan_weekly, parent, false);
} else {
view = convertView;
}
Model item = getItem(position);
int dayVal = Calendar.getInstance().get(Calendar.DAY_OF_WEEK)-1;
ImageView arrow=(ImageView)view.findViewById(R.id.arrow_image);
arrow.setVisibility(View.INVISIBLE);
if(item.getTabId().equals(String.valueOf(dayVal))){
arrow.setVisibility(View.VISIBLE);
}
if(item.getVisited().equals("true"))
{
((TextView)view.findViewById(R.id.sname)).setText(item.getStorename());
((TextView)view.findViewById(R.id.postal)).setText(item.getPostal());
((TextView)view.findViewById(R.id.sname)).setTextColor(Color.parseColor("#D397D4"));
((TextView)view.findViewById(R.id.postal)).setTextColor(Color.parseColor("#D397D4"));
}
if(item.getVisited().equals("false"))
{
((TextView)view.findViewById(R.id.sname)).setText(item.getStorename());
((TextView)view.findViewById(R.id.postal)).setText(item.getPostal());
((TextView)view.findViewById(R.id.sname)).setTextColor(Color.parseColor("#9B419B"));
((TextView)view.findViewById(R.id.postal)).setTextColor(Color.parseColor("#9B419B"));
}
return view;
}
}
Remove this part
ListAdapter adapter = new SimpleAdapter(
getActivity(), contactList,
R.layout.list_item, new String[] { TAG_SITENAME1, TAG_FREQUENCY1, TAG_ACCURRENT1,
TAG_ACVOLTAGE1,TAG_SITENAME2, TAG_FREQUENCY2, TAG_ACCURRENT2,
TAG_ACVOLTAGE2,TAG_SITENAME3, TAG_FREQUENCY3, TAG_ACCURRENT3,
TAG_ACVOLTAGE3, TAG_SITENAME4, TAG_FREQUENCY4, TAG_ACCURRENT4,
TAG_ACVOLTAGE4, TAG_SITENAME5, TAG_FREQUENCY5, TAG_ACCURRENT5,
TAG_ACVOLTAGE5, TAG_SITENAME6, TAG_FREQUENCY6, TAG_ACCURRENT6,
TAG_ACVOLTAGE6, TAG_SITENAME7, TAG_FREQUENCY7, TAG_ACCURRENT7,
TAG_ACVOLTAGE7},
new int[] { R.id.sitename1, R.id.frequency1,
R.id.accurrent1, R.id.acvoltage1, R.id.sitename2, R.id.frequency2,
R.id.accurrent2, R.id.acvoltage2, R.id.sitename3, R.id.frequency3,
R.id.accurrent3, R.id.acvoltage3, R.id.sitename4, R.id.frequency4,
R.id.accurrent4, R.id.acvoltage4, R.id.sitename5, R.id.frequency5,
R.id.accurrent5, R.id.acvoltage5, R.id.sitename6, R.id.frequency6,
R.id.accurrent6, R.id.acvoltage6, R.id.sitename7, R.id.frequency7,
R.id.accurrent7, R.id.acvoltage7});
// updating listviews
setListAdapter(adapter);
and instead of SimpleAdapter you use customadapter. In CustomAdapter you can set the textcolor as i shown in my previous post.Just go through the class "public class CustomAdapter extends ArrayAdapter "

Got Soap response of .asmx web-service,but cannot link the response to listview

I am really new to android and I've got a task to parse the .asmx webservise*(which returns JSON*) and get it's content in listview. I check few examples from web but it's not working out for me.
Here's my code :
package com.Parsing.SOAPParsing;
import java.util.ArrayList;
import java.util.HashMap;
import org.json.JSONArray;
import org.json.JSONObject;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.PropertyInfo;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ListAdapter;
import android.widget.SimpleAdapter;
import android.widget.TextView;
public class MainActivity extends ListActivity {
private static final String SOAP_ACTION = "http://tempuri.org/GetMyTest";
private static final String METHOD_NAME = "GetMyTest";
private static final String NAMESPACE = "http://tempuri.org/";
private static final String URL = "http://www.beyyondcareers.com/webservice.asmx";
TextView tv;
ArrayList<HashMap<String, String>> testList = new ArrayList<HashMap<String, String>>();
private String result;
private JSONArray JSONArr;
private static final String TAG_TEST_ID = "TestId";
private static final String TAG_ORG_ID = "OrgId";
private static final String TAG_TEST_TYPE = "TestType";
private static final String TAG_TEST_NAME = "TestName";
private static final String TAG_NO_OF_SECTION= "NoOfSection";
private static final String TAG_TEST_TIME = "TestTime";
private static final String TAG_TEST_SCORE = "TestScore";
private static final String TAG_DIRECTION = "Direction";
private static final String TAG_DISPLAY = "Display";
private static final String TAG_CREATE_ON = "CreateOn";
private static final String TAG_CREATED_BY = "CreatedBy";
private static final String TAG_SHOW_CALCULATOR = "ShowCalculator";
private static final String TAG_COURSE_ID = "CourseId";
private static final String TAG_STANDARD_ID = "StandardId";
private static final String TAG_SUBJECT_ID = "SubjectId";
private static final String TAG_IS_CONCEPTE_BUILDER = "IsConceptBuilder";
private static final String TAG_CATEGORY = "TestCategory";
private static final String TAG_TEST_TYPE_ONE = "testTyp";
private static final String TAG_STUDENT_ID = "StudentId";
private static final String TAG_REF_ID = "ReferenceId";
private static final String TAG_REF_TYPE = "ReferenceType";
private static final String TAG_GROUP_ID = "GroupId";
private static final String TAG_DATE_ALLOCATION = "DateOfAllocation";
private static final String TAG_ATTENDED = "Attended";
private static final String TAG_ATTENDED_ON = "AttendedOn";
private static final String TAG_ATTENDED_NO_OF_TIME = "AttendedNoOfTime";
private static final String TAG_STUDENT_TYPE = "StudentType";
#Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView) findViewById(R.id.textview);
try {
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
request.addProperty("StudentId",10);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
androidHttpTransport.call(SOAP_ACTION, envelope);
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
result=response.toString();
//JSONObject json = new JSONObject(response.toString());
//JSONArray jArray = json.getJSONArray("Test0");
JSONArr = new JSONArray(result);
for(int i = 0; i < JSONArr.length(); i++){
JSONObject c = JSONArr.getJSONObject(i);
String testid = c.getString(TAG_TEST_ID);
String orgid = c.getString(TAG_ORG_ID);
String testtype = c.getString(TAG_TEST_TYPE);
String testname = c.getString(TAG_TEST_NAME);
String noofsection = c.getString(TAG_NO_OF_SECTION);
String testtime = c.getString(TAG_TEST_TIME);
String testscore = c.getString(TAG_TEST_SCORE);
String direction = c.getString(TAG_DIRECTION);
String display = c.getString(TAG_DISPLAY);
String createdon = c.getString(TAG_CREATE_ON);
String createdby = c.getString(TAG_CREATED_BY);
String showcalc = c.getString(TAG_SHOW_CALCULATOR);
String courseid = c.getString(TAG_COURSE_ID);
String standardid = c.getString(TAG_STANDARD_ID);
String subjectid = c.getString(TAG_SUBJECT_ID);
String isconceptbuilder = c.getString(TAG_IS_CONCEPTE_BUILDER);
String testcatag = c.getString(TAG_CATEGORY);
String testtyp = c.getString(TAG_TEST_TYPE_ONE);
String studendid = c.getString(TAG_STUDENT_ID);
String refid = c.getString(TAG_REF_ID);
String reftype = c.getString(TAG_REF_TYPE);
String groupid = c.getString(TAG_GROUP_ID);
String dateofallocation = c.getString(TAG_DATE_ALLOCATION);
String attended = c.getString(TAG_ATTENDED);
String attendedon = c.getString(TAG_ATTENDED_ON);
String attendednooftime = c.getString(TAG_ATTENDED_NO_OF_TIME);
String studenttype = c.getString(TAG_STUDENT_TYPE);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_TEST_ID, testid);
map.put(TAG_TEST_TYPE, testtype);
map.put(TAG_TEST_NAME, testname);
testList.add(map);
}
} catch (Exception e) {
tv.setText(e.getMessage());
}
ListAdapter adapter = new SimpleAdapter(this, testList,
R.layout.list_item,
new String[] { TAG_TEST_ID, TAG_TEST_TYPE, TAG_TEST_NAME }, new int[] {
R.id.testid, R.id.type, R.id.testname});
setListAdapter(adapter);
}
}
With this code i am just getting the JSON File but now i want to parse it and get some of its fields stored in listview.
My JSON output is like this:
{
"Test0": [
5, - TestId
1, - OrgId
6, - TestType
"a", - TestName
1, - NoOfSection
5, - TestTime
1, - TestScore
"", - Direction
"Y", - Display
"\/Date(1316416540330)\/", - CreatOn
1, - CreatedBy
"N", - ShowCalculator
0, - CourseId
0, - StandardId
0, - SubjectId
"N", - IsConecptBuilder
"Word Test", - TestCategory
"Prospect Test", - TestTyp
19, - StudentId
5, - ReferenceId
"Test", - ReferenceType
0, - GroupId
"\/Date1332924520530)\/", - DataOfAllocation
"Y", - Attended
null, - AttendedOn
13, - AttendedNoOfTime
"Prospect" - StudentType
]
}
can anyone please help me with modifying the code so i can populate the listview with 3 of the above fields.
Thank you!
The Test0 is just aa JSONArray. You can access the items by id. Should be something like
JSONArray c = JSONArr.getJSONObject(i);
then acces the elements like
int TestId=0;
c.getString(TestId);

Categories

Resources