Arun Theandroider Ответов: 0

Как я могу получить выбранное значение переключателей для моего второго действия, назначив значение ответа JSON с помощью глобальной переменной в основном действии?


Как я могу получить значение выбранного переключателя для моего второго действия, назначив значение ответа JSON с помощью глобальной переменной в основном действии? Я прикрепил API с помощью метода post с условиями:

Ссылка : http://garage.kaptastech.mobi/api/5k/master/vehicle---> это моя ссылка на API

Метод: пост

тип: целое число 1 или 2 - > 1 = бензин, 2 = дизельное топливо

вариант: целое число 1 или 2 - > 1 = полностью загруженная, 2 = Базовая модель

Я уже присвоил значения 1 и 2 для моих переключателей бензин и дизель, а также полностью загруженную и базовую модель, используя глобальную переменную variantId и typeId, и я также передал ее в качестве параметра для добавления.

Теперь моя проблема заключается в том, что мне нужно вернуть результат в виде бензина или дизельного топлива, или полностью загруженного, или базовой модели(это зависит от выбора) Мне нужно вернуть свои результаты в виде текста, а не значений:

Чтобы четко говорить, мне становится как-то: Тип: 1 Вариант : 1

Но мне нужен результат как:

Тип: дизельный вариант: полностью загруженный.

Проблема в том,что я не знаю, как вернуть значение обратно, Вот и все.

Что я уже пробовал:

Моя основная активность(добавление транспортного средства)

public class MainActivity расширяет AppCompatActivity {
частная строковый тег = в MainActivity.класс.getSimpleName();
ArrayList и Л;строка> У brandListArray = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У modelListArray = новый ArrayList и Л;строка&ГТ;();
Кнопка addVehicleBtn;
EditText AddVehicle_Regno, kmscovered;
Радиобуттон бензиновый, дизельный, полностью заряженный, базовая модель;
TextView textView8, textViewkms;
Spinner AddspinnerMake, AddspinnerModel, AddspinnerYear;
частная статическая строка url = "http://garage.kaptastech.mobi/api/5k/master/vehicle";
частные строковые значения[] ;
ArrayList< string> brandListId;
ArrayList< string & gt; modelListId;

String brandId;
String modelId;
Строку ИД типа;
String variantId;

ArrayList и Л;частности, в<строка, строка&ГТ;&ГТ; addVehiclelist;

Строка jsonStr;
Строки Регно fuelType, Марка, год, Модель, вариант;

@Ручная коррекция
protected void onCreate(Bundle savedInstanceState) {
super. onCreate(savedInstanceState);
setContentView(R. layout.activity_main);
brandListArray = новый ArrayList & lt;string>();
brandListId = новый ArrayList & lt;string>();
modelListArray = новый ArrayList & lt;string>();
modelListId = новый ArrayList & lt;string>();


addVehiclelist = новый ArrayList и Л;частности, в<строка, строка&ГТ;&ГТ;();
petrol = (RadioButton) findViewById(R. id. petrol);
Diesel = (RadioButton) findViewById(R. id. diesel);
полностью заряжен = (переключатели) команду findViewById(Р. ИД.полностью заряжен);
Basicmodel = (RadioButton) findViewById(R. id. basicmodel);
addVehicleBtn = (кнопка) findViewById(R. id. addVehicleBtn);
AddVehicle_Regno = (EditText) findViewById (R. id. AddVehicle_Regno);
kmscovered = (полей EditText) findViewById, чтобы найти(ИД Р..kmsCovered);
textView8 = (виджет TextView) findViewById, чтобы найти(Р. ИД.textView8);
textViewkms = (виджет TextView) findViewById, чтобы найти(ИД Р..textViewkms);
AddspinnerMake = (Spinner) findViewById(R. id. AddspinnerMake);
AddspinnerModel = (Spinner) findViewById(R. id. AddspinnerModel);
AddspinnerYear = (Spinner) findViewById(R. id. AddspinnerYear);


new Getbrands (). execute();

бензин. setOnCheckedChangeListener (new CompoundButton.OnCheckedChangeListener() {
@Ручная коррекция
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

если (бензин.этот флажок установлен()) {
fuelType = petrol.getText (). toString();
typeId= " 1";


}
}
});

Diesel. setOnCheckedChangeListener (new CompoundButton.OnCheckedChangeListener() {
@Ручная коррекция
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

если (дизель.этот флажок установлен()) {
fuelType = Diesel.getText (). toString();
typeId = " 2";
}
}
});
AddspinnerMake. setOnItemSelectedListener(новый AdapterView.OnItemSelectedListener() {
@Ручная коррекция
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
Brand = AddspinnerMake. getSelectedItem (). toString();


если (позиция > 0) {
brandId = brandListId. get (позиция).toString();


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

}

@Ручная коррекция
public void onNothingSelected(AdapterView<?> adapterView) {

}
});
AddspinnerYear. setOnItemSelectedListener(новый AdapterView.OnItemSelectedListener() {
@Ручная коррекция
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
Year = AddspinnerYear. getSelectedItem (). toString();

}

@Ручная коррекция
public void onNothingSelected(AdapterView<?> adapterView) {

}
});
AddspinnerModel. setOnItemSelectedListener(новый AdapterView.OnItemSelectedListener() {
@Ручная коррекция
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
Model = AddspinnerModel. getSelectedItem (). toString();

если (позиция > 0) {
модэлид = modelListId.вам(должность).toString();
}
}

@Ручная коррекция
public void onNothingSelected(AdapterView<?> adapterView) {

}
});
Basicmodel. setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Ручная коррекция
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

если (Basicmodel.этот флажок установлен()) {
variant = Basicmodel. getText (). toString();
variantId = " 2";

}
}
});

fullloaded. setOnCheckedChangeListener (new CompoundButton.OnCheckedChangeListener() {
@Ручная коррекция
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {

если (полностью заряжен.этот флажок установлен()) {
вариант = полностью заряжен.то gettext().метод toString();
variantId = " 1";

}
}
});


addVehicleBtn. setOnClickListener(новый вид.OnClickListener() {
@Ручная коррекция
public void onClick (View view) {
Regno = AddVehicle_Regno. getText (). toString();
new GetVehicle (). execute();


Намерение намерение = новое намерение(в MainActivity.это, AddVehicle.class);
startActivity (намерение);
}
});

частная GetVehicle класс расширяет AsyncTask&ЛТ;пустота, пустота, пустота&ГТ; {

@Ручная коррекция
охраняемых недействительными onPreExecute() {
супер.onPreExecute();
}

@Ручная коррекция
защищенный Void doInBackground(Void... arg0) {

HttpClient client = новый DefaultHttpClient();
Протоколы HttpPost протоколы HttpPost = новые протоколы HttpPost("http://garage.kaptastech.mobi/api/5k/master/vehicle");

Список<namevaluepair&ГТ; nameValuePair = новый 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.добавить(новый BasicNameValuePair("год", год));

пробовать {
httpPost. setEntity (новый UrlEncodedFormEntity(nameValuePair));
} catch (UnsupportedEncodingException e) {
// запись ошибки в журнал
е.печатные();
}

// Создание HTTP-запроса
пробовать {
HttpResponse response = client. execute(httpPost);


// запись ответа в журнал
Log. d ("Ответ от url:", response.toString());
jsonStr = EntityUtils.toString(response. getEntity());
} catch (IOException e) {
е.печатные();
}
пробовать {
/*HttpConnection ht = новый HttpConnection();
ХТ.getVehicle();*/
Jsonobject object = новый JSONObject(jsonStr);
Автомобиль JSONArray = объект.getJSONArray("данные");
для (int i = 0; i < Vehicle.length (); i++) {

JSONObject c = Vehicle. getJSONObject(i);
String Regno = c. getString ("registration_no");
String brand = c. getString ("бренд");
String model = c. getString ("модель");
String fueltype = c. getString ("тип");
String variant = c. getString ("variant");
Хранилище HashMap и Л;строка, строка&ГТ; вл = новый HashMap и Л;строка, строка&ГТ;();
Вл. put ("registration_no", Regno);
Вл.пут("наименование", наименование);
Вл. put ("модель", model);
Vl. put("type", fueltype);
Вл.пут("вариант", вариант);
addVehiclelist.добавить(вл);
значения = новая строка[]{
"Регистрационный Номер:" + Regno,
"Бренд:" + бренд,
"Модель:" + модель,
"Тип:" + тип топлива,
"Вариант:" + вариант,
};
}


} catch (JSONException e) {
е.печатные();
}

возвращать null;
}

@Ручная коррекция
protected void onPostExecute(Void aVoid) {
супер.onPostExecute реализовывались(не);
}
}

частная Getbrands класс расширяет AsyncTask&ЛТ;пустота, пустота, пустота&ГТ; {
@Ручная коррекция
охраняемых недействительными onPreExecute() {
супер.onPreExecute();
}

@Ручная коррекция
защищенный Void doInBackground(Void... arg0) {
HttpClient client = новый DefaultHttpClient();
HttpGet httpGet = новый HttpGet("http://garage.kaptastech.mobi/api/5k/master/brand");

пробовать {
HttpResponse response = client. execute(httpGet);


// запись ответа в журнал
Log. d ("Ответ от url:", response.toString());
jsonStr = EntityUtils.toString(response. getEntity());
} catch (IOException e) {
е.печатные();
}
пробовать {
HttpConnection ht = новый HttpConnection();
ХТ.getbrand();
Jsonobject object = новый JSONObject(jsonStr);
BrandArray JSONArray = объект.getJSONArray("данные");

brandListArray.понятно();
brandListId.понятно();
brandListArray. add ("выберите бренд");
brandListId. add("0");
for (int i = 0; i < brandArray. length (); i++) {
JSONObject gb = brandArray. getJSONObject(i);
brandListArray. add(gb. getString ("name"));
brandListId.добавить(ГБ.и getString("идентификатор"));
String[] brandStringArray = новая строка[brandListArray. size()];
brandStringArray = brandListArray.toArray(brandStringArray);
for (int i1 = 0; i1 < brandStringArray. length; i1++) {
Войти.д("строка", (строку) brandStringArray[и1]);
}

}


} catch (JSONException e) {
е.печатные();
}

возвращать null;
}

protected void onPostExecute(результат Void) {
super. onPostExecute (результат);

Адаптер массива в<строка&ГТ; переходник = новый адаптер массива в<строка&ГТ;(в MainActivity.это, Android.Р.макет.simple_spinner_item, brandListArray);
adapter.setDropDownViewResource(android. R. layout.simple_spinner_dropdown_item);
AddspinnerMake. setAdapter(адаптер);


}
}

частный класс Getmodels расширяет AsyncTask< Void, Void, Void> {
@Ручная коррекция
охраняемых недействительными onPreExecute() {
супер.onPreExecute();
}

@Ручная коррекция
защищенный Void doInBackground(Void... arg0) {
HttpClient client = новый DefaultHttpClient();
HttpGet httpGet = новый HttpGet("http://garage.kaptastech.mobi/api/5k/master/models/" + brandId);

пробовать {
HttpResponse response = client. execute(httpGet);


// запись ответа в журнал
Log. d ("Ответ от url:", response.toString());
jsonStr = EntityUtils.toString(response. getEntity());
} catch (IOException e) {
е.печатные();
}
пробовать {
HttpConnection ht = новый HttpConnection();
ХТ.getmodel();
Jsonobject object = новый JSONObject(jsonStr);
ModelArray JSONArray = объект.getJSONArray("данные");

modelListArray.понятно();
modelListId.понятно();
modelListArray. add ("выберите модель");
modelListId. add("0");
for (int i = 0; i < modelArray. length (); i++) {
JSONObject gm = modelArray. getJSONObject(i);
modelListArray. add(gm. getString ("name"));
modelListId.добавить(ГМ.и getString("идентификатор"));
String[] modelStringArray = новая строка[modelListArray. size()];
modelStringArray = modelListArray.toArray(modelStringArray);
for (int i2 = 0; i2 < modelStringArray. length; i2++) {
Войти.д("строка", (строку) modelStringArray[И2]);
}
}


} catch (JSONException e) {
е.печатные();
}

возвращать null;
}

protected void onPostExecute(результат Void) {
super. onPostExecute (результат);
Адаптер массива в<строка&ГТ; переходник = новый адаптер массива в<строка&ГТ;(в MainActivity.это, Android.Р.макет.simple_spinner_dropdown_item, modelListArray);
AddspinnerModel. setAdapter(адаптер);


}
}
}


Addvehicle.java

публичный класс AddVehicle расширяет AppCompatActivity {
ListView с addVehicleListView;
ArrayList и Л;частности, в<строка, строка&ГТ;&ГТ; VehicleList;
частные строковые значения[] ;



частная статическая строка urlString = "http://garage.kaptastech.mobi/api/5k/users/vehicle";
частная строковый тег = AddVehicle.класс.getSimpleName();


ArrayList & lt;vehicles> al_vehicles;
MVehiclesAdapter VehiclesAdapter ;

@Ручная коррекция
protected void onCreate(Bundle savedInstanceState) {
super. onCreate(savedInstanceState);
setContentView(R. layout.activity_list);

al_vehicles=новый ArrayList< & gt;();

VehicleList = новый ArrayList и Л;частности, в<строка, строка&ГТ;&ГТ;();
addVehicleListView = (элемент управления ListView) findViewById, чтобы найти(ИД Р..addVehicleListView);
new GetVehicle (). execute();

}

частная GetVehicle класс расширяет AsyncTask&ЛТ;пустота, пустота, пустота&ГТ; {


@Ручная коррекция
protected Void doInBackground(пустота... пустоты) {

HttpConnection ht = новый HttpConnection();
Ответ строку = ХТ.getVehicle();
{
пробовать {

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

al_vehicles.понятно();
Jsonobject Object = новый JSONObject(ответ);
Автомобиль JSONArray = Объект.getJSONArray("данные");
для (int i = 0; i < Vehicle.length (); i++) {
JSONObject c = Vehicle. getJSONObject(i);
Средствами mVehicle=новые транспортные средства();
mVehicle.setReg_no(c. getString ("registration_no"));
mVehicle.setType(c. getString ("type"));

mVehicle.setVariant(ок. и getString("вариант"));
JSONObject brand=c. getJSONObject ("бренд");
mVehicle.setBrand_name(brand. getString ("name"));
mVehicle.setBrand_code(brand. getString ("код"));
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);
}
} поймать (исключение e окончательной) {
е.печатные();
}
}
возвращать null;

}

@Ручная коррекция
охраняемых недействительными onPreExecute() {
супер.onPreExecute();
}

protected void onPostExecute(результат Void) {
super. onPostExecute (результат);
mVehiclesAdapter=new VehiclesAdapter(AddVehicle. this, al_vehicles);
addVehicleListView. setAdapter(mVehiclesAdapter);

}
}
}

0 Ответов