packagecom.android.up;importjava.util.ArrayList;importjava.util.List;importorg.apache.http.HttpResponse;importorg.apache.http.NameValuePair;importorg.apache.http.client.ClientProtocolException;importorg.apache.http.message.BasicNameValuePair;importorg.json.JSONObject;importcom.android.MainActivity;importcom.android.R;importcom.anroid.net.DialogUtil;importandroid.app.Activity;importandroid.app.ProgressDialog;importandroid.content.Intent;importandroid.os.AsyncTask;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.TextView;public class up extendsActivity {//Progress Dialog
privateProgressDialog pDialog;privateTextView tv_head;
JSONParser jsonParser= newJSONParser();
EditText inputName;
EditText inputEmail;
EditText inputDesc;
Button upback;//url to create new product
private static String url_up = "http://10.0.2.2/up/up.php";private static final String TAG_MESSAGE = "message";
@Overridepublic voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
setContentView(R.layout.up);
tv_head=(TextView)findViewById(R.id.tv_head);
tv_head.setText("建议");//Edit Text
inputName =(EditText) findViewById(R.id.inputName);
inputEmail=(EditText) findViewById(R.id.inputEmail);
inputDesc=(EditText) findViewById(R.id.inputDesc);
upback=(Button)findViewById(R.id.upback);
upback.setOnClickListener(newOnClickListener() {
@Overridepublic voidonClick(View arg0) {//TODO Auto-generated method stub
Intent back = new Intent(up.this,MainActivity.class);
back.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(back);
up.this.finish();
}
});//Create button
Button btnCreateProduct =(Button) findViewById(R.id.btnCreateProduct);//button click event
btnCreateProduct.setOnClickListener(newView.OnClickListener() {public voidonClick(View view) {//creating new product in background thread
if(validate()){newUp().execute();
}
}
});
}private booleanvalidate()
{
String description=inputDesc.getText().toString().trim();if (description.equals(""))
{
DialogUtil.showDialog(this, "您还没有填写建议", false);return false;
}return true;
}/*** Background Async Task to Create new product
**/
class Up extends AsyncTask{/*** Before starting background thread Show Progress Dialog
**/@Overrideprotected voidonPreExecute() {super.onPreExecute();
pDialog= new ProgressDialog(up.this);
pDialog.setMessage("正在上传..");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}/*** Creating product
**/
protectedString doInBackground(String... args) {
String name=inputName.getText().toString();
String email=inputEmail.getText().toString();
String description=inputDesc.getText().toString();//Building Parameters
List params = new ArrayList();
params.add(new BasicNameValuePair("name", name));
params.add(new BasicNameValuePair("email", email));
params.add(new BasicNameValuePair("description", description));//getting JSON Object//Note that create product url accepts POST method
try{
JSONObject json=jsonParser.makeHttpRequest(url_up,"POST", params);
String message = json.getString(TAG_MESSAGE);
return message;
}catch(Exception e){e.printStackTrace();
return "";
}//check for success tag
}/*** After completing background task Dismiss the progress dialog
* **/
protected voidonPostExecute(String message) {pDialog.dismiss();
//message 为接收doInbackground的返回值
Toast.makeText(getApplicationContext(), message, 8000).show();
}
}
}