Android 如何使用自定义arrayAdapter在onPostExecute中列出mssql记录。我写了以下代码,但当我执行时,应用程序停止了
我想在android listview中列出我的mssql记录。这是我的密码 活动Android 如何使用自定义arrayAdapter在onPostExecute中列出mssql记录。我写了以下代码,但当我执行时,应用程序停止了,android,sql-server,listview,Android,Sql Server,Listview,我想在android listview中列出我的mssql记录。这是我的密码 活动 public class YoneticiMenuActivity extends Activity { JSONObject jsonObject = null; //JSONArray jsonArray = null; //public Is isler = new Is(); //public ArrayList<Is> arrayIsler = new ArrayList<Is>
public class YoneticiMenuActivity extends Activity {
JSONObject jsonObject = null;
//JSONArray jsonArray = null;
//public Is isler = new Is();
//public ArrayList<Is> arrayIsler = new ArrayList<Is>();
ListView lvTumIsler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_yonetici_menu);
Intent iAl = getIntent();
String mesaj = iAl.getStringExtra(LoginActivity.m);
int mode = Activity.MODE_PRIVATE;
SharedPreferences mSP;
mSP = getSharedPreferences(mesaj, mode);
String baslik = mSP.getString("name", "") + " " + mSP.getString("surname", "") + ", Hoşgeldiniz";
setTitle(baslik);
lvTumIsler = (ListView)findViewById(R.id.lvTumIsler);
new AsyncTaskYonetici("Veriler yükleniyor...").execute();
}
private class AsyncTaskYonetici extends AsyncTask<Void, Void, Void> {
String modalMesaj;
ProgressDialog dialog;
JSONArray jsonArray = null;
JSONObject jsonObject = null;
public Is isler = new Is();
public ArrayList<Is> arrayIsler = new ArrayList<Is>();
//private ListView lvTumIsler;
public AsyncTaskYonetici(String mMesaj) {
this.modalMesaj = mMesaj;
this.dialog = new ProgressDialog(YoneticiMenuActivity.this);
}
@Override
protected void onPreExecute() {
dialog.setMessage(modalMesaj);
dialog.setIndeterminate(true);
dialog.setCancelable(false);
dialog.show();
}
@Override
protected Void doInBackground(Void... params) {
String url = "http://www.saklambacjeans.com/skbos/webServiceTumIsler.aspx";
HttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet(url);
HttpResponse response;
try {
response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instream = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(instream));
String line = null;
try {
if ((line = reader.readLine()) != null) {
jsonArray = new JSONArray(line);
}
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
instream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
} catch (ClientProtocolException e) {
Mesaj(e.getMessage());
} catch (IOException e) {
Mesaj(e.getMessage());
} /*catch (JSONException e) {
Mesaj(e.getMessage());
}*/
return null;
}
@Override
protected void onPostExecute(Void str) {
try {
for (int i = 0; i < jsonArray.length(); i++)
{
jsonObject = jsonArray.getJSONObject(i);
isler.setP(Integer.parseInt(jsonObject.getString("urunId").toString()),
Integer.parseInt(jsonObject.getString("modelNo").toString()),
jsonObject.getString("modelAd").toString(),
jsonObject.getString("bedenAd").toString(),
Integer.parseInt(jsonObject.getString("adet").toString()),
jsonObject.getString("aciklama").toString(),
jsonObject.getString("kesmeTalimat").toString(),
jsonObject.getString("atolyeTalimat").toString(),
jsonObject.getString("yıkamaTalimat").toString(),
jsonObject.getString("utuTalimat").toString(),
jsonObject.getString("kesimci").toString(),
jsonObject.getString("atolyeci").toString(),
jsonObject.getString("yıkamacı").toString(),
jsonObject.getString("utucu").toString(), jsonObject.getString("kontrolcu").toString());
arrayIsler.add(isler);
}
} catch (JSONException e) {
e.printStackTrace();
}
IsAdapter adapter = new IsAdapter(YoneticiMenuActivity.this, R.layout.layouttumisler, arrayIsler);
lvTumIsler.setAdapter(adapter);
if (dialog.isShowing())
dialog.dismiss();
}
}
private void Mesaj(String s) {
Toast.makeText(this, s, Toast.LENGTH_LONG).show();
}
}
我在主布局中使用listview,在Layoutumısler中有6个textview。我在myAsyncTask的onPostExecute中使用IsAdapter,但当我执行应用程序时,它会停止。
mssql记录确实来自web服务,但我无法列出。我在IsAdapter getView中出错,在
tvUrunId.setText(is.getId());
请帮帮我…我换衣服时犯了个大错
public int getId() {return urunId;}
作为
代码是有效的
tvUrunId.setText(is.getId());
public int getId() {return urunId;}
public String getId()
{
String s = Integer.toString(urunId);
return s;
}