я имею проблему передачи значений из TextView в диалоге AsyncTask добавить в базу данных, вот код:Pass значение из TextView в диалоге AsyncTask
public void addfooddialog(View v){
final Dialog dialog = new Dialog(context);
dialog.setContentView(R.layout.addfooddialog);
dialog.setTitle("Insert food");
dialog.setCancelable(false);
dialog.show();
Button b = (Button)dialog.findViewById(R.id.addfood);
b.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
new add().execute();
}
});
}
и вот класс расширения AsyncTask
class add extends AsyncTask<String, String, String> {
Dialog d= new Dialog(context);
@Override
protected void onPreExecute() {
super.onPreExecute();
d.setContentView(R.layout.addfooddialog);
Log.i("","ata3 men hon");
}
@Override
protected String doInBackground(String... arg0) {
TextView title= (TextView)d.findViewById(R.id.plattername);
TextView description= (TextView) d.findViewById(R.id.description);
TextView price= (TextView)d. findViewById(R.id.price);
String foodname = title.getText().toString();
String fooddescription = description.getText().toString();
String foodprice = price.getText().toString();
// Building Parameters
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("title", foodname));
params.add(new BasicNameValuePair("description", fooddescription));
params.add(new BasicNameValuePair("price", foodprice));
// getting JSON Object
// Note that create product url accepts POST method
JSONObject json = jsonParser.makeHttpRequest(url_add,
"POST", params);
final String TAG_SUCCESS = "success";
// check log cat fro response
Log.d("Create Response", json.toString());
// check for success tag
try {
int success = json.getInt(TAG_SUCCESS);
if (success == 1) {
// successfully created product
Log.i("sucees","---------------------------------");
// closing this screen
finish();
} else {
// failed to create product
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
}
}
Теперь я знаю, что диалог воссоздается и поэтому значения возврата в нуль, но как я па s значения непосредственно в класс asynctask?
Спасибо заранее
Пожалуйста, форматировать Ваш код правильно и удалить несвязанные линии, как Ведение журналов и так далее. Его действительно трудно узнать, что происходит здесь, со всем, что нечаянный код обернулся. – danijoo
oke отредактировал ... я добавляю название, описание и цену еды, в диалоговом окне я заполняю текстовые поля и нажимаю кнопку, onclick он должен передавать значения в asynctask, чтобы он помещал их в базу данных ... – ralph
вы можете отредактировать его правильно и, пожалуйста, код рефакторинга –