大家好:
想請教
我用eclipse 來寫android
目前要連mysql,但是我的LIST都沒顯示任何東西.....
想請教各位大大該如何更改?
以下是程式碼:
android部分
main主程式部分
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViews();
setListeners();
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectDiskReads()
.detectDiskWrites()
.detectNetwork()
.penaltyLog()
.build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectLeakedSqlLiteObjects()
.penaltyLog()
.penaltyDeath()
.build());
}
private Button button_get_record;
private void findViews() {
button_get_record = (Button)findViewById(R.id.get_record);
}
private void setListeners() {
button_get_record.setOnClickListener(getDBRecord);
}
private Button.OnClickListener getDBRecord = new Button.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
TableLayout user_list = (TableLayout)findViewById(R.id.user_list);
user_list.setStretchAllColumns(true);
TableLayout.LayoutParams row_layout = new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
TableRow.LayoutParams view_layout = new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
try {
String result = SigninActivity.executeQuery("SELECT * FROM login");
JSONArray jsonArray = new JSONArray(result);
for(int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonData = jsonArray.getJSONObject(i);
TableRow tr = new TableRow(MainActivity.this);
tr.setLayoutParams(row_layout);
tr.setGravity(Gravity.CENTER_HORIZONTAL);
TextView user_acc = new TextView(MainActivity.this);
user_acc.setText(jsonData.getString("acc"));
user_acc.setLayoutParams(view_layout);
TextView user_pwd = new TextView(MainActivity.this);
user_pwd.setText(jsonData.getString("pwd"));
user_pwd.setLayoutParams(view_layout);
tr.addView(user_acc);
tr.addView(user_pwd);
user_list.addView(tr);
}
} catch(Exception e) {
// Log.e("log_tag", e.toString());
}
}
};
}
db.java資料庫連接
public class SigninActivity {
public static String executeQuery(String acc) {
String result = "";
acc="user";
try {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://192.168.1.122/cont.php");
ArrayList<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("acc", acc));
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
HttpResponse httpResponse = httpClient.execute(httpPost);
//view_account.setText(httpResponse.getStatusLine().toString());
HttpEntity httpEntity = httpResponse.getEntity();
InputStream inputStream = httpEntity.getContent();
BufferedReader bufReader = new BufferedReader(new InputStreamReader(inputStream, "utf-8"), 8);
StringBuilder builder = new StringBuilder();
String line = null;
while((line = bufReader.readLine()) != null) {
builder.append(line + "\n");
}
inputStream.close();
result = builder.toString();
} catch(Exception e) {
// Log.e("log_tag", e.toString());
}
return result;
}
}
卡了好久,還請大家指點,謝謝