Click here to Skip to main content
15,903,388 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
How can i get the selected radio button's value on my second activity by assigning the JSON response value using a global variable in main Activity? I'd attached the API with post method with conditions:

Link : http://garage.kaptastech.mobi/api/5k/master/vehicle---> Its my API link

Method : POST

type : integer 1 or 2 -> 1 = PETROL , 2 = DIESEL

variant : integer 1 or 2 -> 1 = Fully loaded , 2 = Basic Model

I had already assigned the value 1 and 2 for my radio button petrol and diesel and as well as fullyloaded and basic model using a global variable variantId and typeId and i also passed it as a parameter for adding.

Now my problem is that i need to get back the result as Petrol or Diesel or Fullyloaded or BasicModel(that depends upon the selection) I need to get back my results as text instead of values:

To say clearly, Now Iam getting as: Type: 1 Variant : 1

But i need the result as:

Type: Diesel variant: fullyloaded.

The problem is that i dont know how to retrieve the value back,That's all.

What I have tried:

My MainActivity(Adding vehicle)

public class MainActivity extends AppCompatActivity {
private String TAG = MainActivity.class.getSimpleName();
ArrayList<string> brandListArray = new ArrayList<string>();
ArrayList<string> modelListArray = new ArrayList<string>();
Button addVehicleBtn;
EditText AddVehicle_Regno, kmscovered;
RadioButton petrol, Diesel, fullyloaded, Basicmodel;
TextView textView8, textViewkms;
Spinner AddspinnerMake, AddspinnerModel, AddspinnerYear;
private static String url = "http://garage.kaptastech.mobi/api/5k/master/vehicle";
private String[] values;
ArrayList<string> brandListId;
ArrayList<string> modelListId;

String brandId;
String modelId;
String typeId;
String variantId;

ArrayList<HashMap<String, String>> addVehiclelist;

String jsonStr;
String Regno, fuelType, Brand, Year, Model, variant;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
brandListArray = new ArrayList<string>();
brandListId = new ArrayList<string>();
modelListArray = new ArrayList<string>();
modelListId = new ArrayList<string>();


addVehiclelist = new ArrayList<HashMap<String, String>>();
petrol = (RadioButton) findViewById(R.id.petrol);
Diesel = (RadioButton) findViewById(R.id.diesel);
fullyloaded = (RadioButton) findViewById(R.id.fullyLoaded);
Basicmodel = (RadioButton) findViewById(R.id.basicmodel);
addVehicleBtn = (Button) findViewById(R.id.addVehicleBtn);
AddVehicle_Regno = (EditText) findViewById(R.id.AddVehicle_Regno);
kmscovered = (EditText) findViewById(R.id.kmsCovered);
textView8 = (TextView) findViewById(R.id.textView8);
textViewkms = (TextView) findViewById(R.id.textViewkms);
AddspinnerMake = (Spinner) findViewById(R.id.AddspinnerMake);
AddspinnerModel = (Spinner) findViewById(R.id.AddspinnerModel);
AddspinnerYear = (Spinner) findViewById(R.id.AddspinnerYear);


new Getbrands().execute();

petrol.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

if (petrol.isChecked()) {
fuelType = petrol.getText().toString();
typeId="1";


}
}
});

Diesel.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

if (Diesel.isChecked()) {
fuelType = Diesel.getText().toString();
typeId = "2";
}
}
});
AddspinnerMake.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
Brand = AddspinnerMake.getSelectedItem().toString();


if (position > 0) {
brandId = brandListId.get(position).toString();


//**Get Model execute api//
new Getmodels().execute();
}

}

@Override
public void onNothingSelected(AdapterView<?> adapterView) {

}
});
AddspinnerYear.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
Year = AddspinnerYear.getSelectedItem().toString();

}

@Override
public void onNothingSelected(AdapterView<?> adapterView) {

}
});
AddspinnerModel.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
Model = AddspinnerModel.getSelectedItem().toString();

if (position > 0) {
modelId = modelListId.get(position).toString();
}
}

@Override
public void onNothingSelected(AdapterView<?> adapterView) {

}
});
Basicmodel.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

if (Basicmodel.isChecked()) {
variant = Basicmodel.getText().toString();
variantId ="2";

}
}
});

fullyloaded.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

if (fullyloaded.isChecked()) {
variant = fullyloaded.getText().toString();
variantId = "1";

}
}
});


addVehicleBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Regno = AddVehicle_Regno.getText().toString();
new GetVehicle().execute();


Intent intent = new Intent(MainActivity.this, AddVehicle.class);
startActivity(intent);
}
});

private class GetVehicle extends AsyncTask<Void, Void, Void> {

@Override
protected void onPreExecute() {
super.onPreExecute();
}

@Override
protected Void doInBackground(Void... arg0) {

HttpClient client = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://garage.kaptastech.mobi/api/5k/master/vehicle");

List<namevaluepair> nameValuePair = new ArrayList<namevaluepair>(7);
nameValuePair.add(new BasicNameValuePair("user_id", "5"));
nameValuePair.add(new BasicNameValuePair("registration_no", Regno));
nameValuePair.add(new BasicNameValuePair("brand", brandId));
nameValuePair.add(new BasicNameValuePair("model", modelId));
nameValuePair.add(new BasicNameValuePair("type", typeId));
nameValuePair.add(new BasicNameValuePair("variant", variantId));
nameValuePair.add(new BasicNameValuePair("year", Year));

try {
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePair));
} catch (UnsupportedEncodingException e) {
// writing error to Log
e.printStackTrace();
}

// Making HTTP Request
try {
HttpResponse response = client.execute(httpPost);


// writing response to log
Log.d("Response from url:", response.toString());
jsonStr = EntityUtils.toString(response.getEntity());
} catch (IOException e) {
e.printStackTrace();
}
try {
/*HttpConnection ht = new HttpConnection();
ht.getVehicle();*/
JSONObject object = new JSONObject(jsonStr);
JSONArray Vehicle = object.getJSONArray("data");
for (int i = 0; i < Vehicle.length(); i++) {

JSONObject c = Vehicle.getJSONObject(i);
String Regno = c.getString("registration_no");
String brand = c.getString("brand");
String model = c.getString("model");
String fueltype = c.getString("type");
String variant = c.getString("variant");
HashMap<String, String> Vl = new HashMap<String, String>();
Vl.put("registration_no", Regno);
Vl.put("brand", brand);
Vl.put("model", model);
Vl.put("type", fueltype);
Vl.put("variant:", variant);
addVehiclelist.add(Vl);
values = new String[]{
"Registration No:" + Regno,
"Brand:" + brand,
"Model:" + model,
"Type:" + fueltype,
"Variant:" + variant,
};
}


} catch (JSONException e) {
e.printStackTrace();
}

return null;
}

@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
}
}

private class Getbrands extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
}

@Override
protected Void doInBackground(Void... arg0) {
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://garage.kaptastech.mobi/api/5k/master/brand");

try {
HttpResponse response = client.execute(httpGet);


// writing response to log
Log.d("Response from url:", response.toString());
jsonStr = EntityUtils.toString(response.getEntity());
} catch (IOException e) {
e.printStackTrace();
}
try {
HttpConnection ht = new HttpConnection();
ht.getbrand();
JSONObject object = new JSONObject(jsonStr);
JSONArray brandArray = object.getJSONArray("data");

brandListArray.clear();
brandListId.clear();
brandListArray.add("Select Brand");
brandListId.add("0");
for (int i = 0; i < brandArray.length(); i++) {
JSONObject gb = brandArray.getJSONObject(i);
brandListArray.add(gb.getString("name"));
brandListId.add(gb.getString("id"));
String[] brandStringArray = new String[brandListArray.size()];
brandStringArray = brandListArray.toArray(brandStringArray);
for (int i1 = 0; i1 < brandStringArray.length; i1++) {
Log.d("String is", (String) brandStringArray[i1]);
}

}


} catch (JSONException e) {
e.printStackTrace();
}

return null;
}

protected void onPostExecute(Void result) {
super.onPostExecute(result);

ArrayAdapter<string> adapter = new ArrayAdapter<string>(MainActivity.this, android.R.layout.simple_spinner_item, brandListArray);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
AddspinnerMake.setAdapter(adapter);


}
}

private class Getmodels extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
}

@Override
protected Void doInBackground(Void... arg0) {
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://garage.kaptastech.mobi/api/5k/master/models/" + brandId);

try {
HttpResponse response = client.execute(httpGet);


// writing response to log
Log.d("Response from url:", response.toString());
jsonStr = EntityUtils.toString(response.getEntity());
} catch (IOException e) {
e.printStackTrace();
}
try {
HttpConnection ht = new HttpConnection();
ht.getmodel();
JSONObject object = new JSONObject(jsonStr);
JSONArray modelArray = object.getJSONArray("data");

modelListArray.clear();
modelListId.clear();
modelListArray.add("Select Model");
modelListId.add("0");
for (int i = 0; i < modelArray.length(); i++) {
JSONObject gm = modelArray.getJSONObject(i);
modelListArray.add(gm.getString("name"));
modelListId.add(gm.getString("id"));
String[] modelStringArray = new String[modelListArray.size()];
modelStringArray = modelListArray.toArray(modelStringArray);
for (int i2 = 0; i2 < modelStringArray.length; i2++) {
Log.d("String is", (String) modelStringArray[i2]);
}
}


} catch (JSONException e) {
e.printStackTrace();
}

return null;
}

protected void onPostExecute(Void result) {
super.onPostExecute(result);
ArrayAdapter<string> adapter = new ArrayAdapter<string>(MainActivity.this, android.R.layout.simple_spinner_dropdown_item, modelListArray);
AddspinnerModel.setAdapter(adapter);


}
}
}


Addvehicle.java

public class AddVehicle extends AppCompatActivity {
ListView addVehicleListView;
ArrayList<HashMap<String, String>> VehicleList;
private String[] values;



private static String urlString = "http://garage.kaptastech.mobi/api/5k/users/vehicle";
private String TAG = AddVehicle.class.getSimpleName();


ArrayList<vehicles> al_vehicles;
VehiclesAdapter mVehiclesAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list);

al_vehicles=new ArrayList<>();

VehicleList = new ArrayList<HashMap<String, String>>();
addVehicleListView = (ListView) findViewById(R.id.addVehicleListView);
new GetVehicle().execute();

}

private class GetVehicle extends AsyncTask<Void, Void, Void> {


@Override
protected Void doInBackground(Void... voids) {

HttpConnection ht = new HttpConnection();
String response = ht.getVehicle();
{
try {

HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet("http://garage.kaptastech.mobi/api/5k/users/vehicle");

al_vehicles.clear();
JSONObject Object = new JSONObject(response);
JSONArray Vehicle = Object.getJSONArray("data");
for (int i = 0; i < Vehicle.length(); i++) {
JSONObject c = Vehicle.getJSONObject(i);
Vehicles mVehicle=new Vehicles();
mVehicle.setReg_no(c.getString("registration_no"));
mVehicle.setType(c.getString("type"));

mVehicle.setVariant(c.getString("variant"));
JSONObject brand=c.getJSONObject("brand");
mVehicle.setBrand_name(brand.getString("name"));
mVehicle.setBrand_code(brand.getString("code"));
mVehicle.setBrand_id(brand.getString("id"));

JSONObject model=c.getJSONObject("vehicle_model");
mVehicle.setModel_name(model.getString("name"));
mVehicle.setModel_code(model.getString("code"));
mVehicle.setModel_id(model.getString("id"));

al_vehicles.add(mVehicle);
}
} catch (final Exception e) {
e.printStackTrace();
}
}
return null;

}

@Override
protected void onPreExecute() {
super.onPreExecute();
}

protected void onPostExecute(Void result) {
super.onPostExecute(result);
mVehiclesAdapter=new VehiclesAdapter(AddVehicle.this,al_vehicles);
addVehicleListView.setAdapter(mVehiclesAdapter);

}
}
}
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900