嗨,我创建了一个应用程序,我隐藏了编辑文本框和两个按钮,在我点击按钮事件后,文本框将在运行时弹出,它工作正常,但我需要输入的文本应该传递给服务器,帮助我。欢迎所有的想法
发布于 2011-03-09 14:31:09
如果我没理解错的话,您的文本框中有文本,并且您希望将该数据发送到服务器。您可以查看以下教程/片段之一,了解如何将数据发布到web服务器:
http://www.androidsnippets.com/executing-a-http-post-request-with-httpclient
发布于 2011-03-09 14:33:41
可以使用JSON或XML将数据发送到远程服务器。
发布于 2013-03-14 21:20:45
嗨,这段代码将把你的数据发送到用edittext编写的服务器。对于textview,只需将edittext的名称改为textview的名称即可。代码如下:
package com.example.asynchttppost;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ProgressBar;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener{
private EditText value;
private Button btn;
private ProgressBar pb;
private TextView tv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
value=(EditText)findViewById(R.id.editText1);
btn=(Button)findViewById(R.id.button1);
pb=(ProgressBar)findViewById(R.id.progressBar1);
tv =(TextView)findViewById(R.id.TextView1);
pb.setVisibility(View.GONE);
btn.setOnClickListener(this);
}
public void onClick(View v) {
// TODO Auto-generated method stub
if(value.getText().toString().length()<1){
// out of range
Toast.makeText(this, "please enter something", Toast.LENGTH_LONG).show();
}else{
pb.setVisibility(View.VISIBLE);
new MyAsyncTask().execute(value.getText().toString());
}
}
private class MyAsyncTask extends AsyncTask<String, Integer, Double>{
@Override
protected Double doInBackground(String... params) {
// TODO Auto-generated method stub
postData(params[0]);
return null;
}
protected void onPostExecute(Double result){
pb.setVisibility(View.GONE);
Toast.makeText(getApplicationContext(), "Code Sent", Toast.LENGTH_LONG).show();
}
protected void onProgressUpdate(Integer... progress){
pb.setProgress(progress[0]);
}
public void postData(String valueIWantToSend) {
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
//HttpPost httppost = new HttpPost("http://10.0.2.2/chotu/index.php");
HttpPost httppost = new HttpPost("http://192.168.1.13/educlinic/Widget/AndroidApp");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("myHttpData", valueIWantToSend));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
}
catch (ClientProtocolException e)
{
// TODO Auto-generated catch block
} catch (IOException e)
{
// TODO Auto-generated catch block
}
}
}
}https://stackoverflow.com/questions/5242153
复制相似问题