E
er4z0r
Neues Mitglied
Hallo,
Unten steht mein Code, der JSON ausließt und einfach dann in eine deptList schreibt und diese wird dann angezeigt.
seit Tagen beschäftigt mich die Frage auf welche Art und Weise ich meine deptList sortieren kann, kann mir da jemand behilflich sein?
Vielen Dank
Unten steht mein Code, der JSON ausließt und einfach dann in eine deptList schreibt und diese wird dann angezeigt.
seit Tagen beschäftigt mich die Frage auf welche Art und Weise ich meine deptList sortieren kann, kann mir da jemand behilflich sein?
Vielen Dank
Code:
class TheTask extends AsyncTask<Void, Void, JSONArray> {
InputStream is = null;
String result = "";
JSONArray jArray = null;
ProgressDialog pd;
@Override
protected void onPostExecute(JSONArray result) {
super.onPostExecute(result);
pd.dismiss();
ArrayList<String> list= new ArrayList<String>();
DeptArrayAdapter adapter=new DeptArrayAdapter(MainActivity.this,R.id.title,deptList);
final ListView listv=(ListView)findViewById(R.id.custom_list);
listv.setAdapter(adapter);
listv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
Object o = listv.getItemAtPosition(position);
JsonStrings newsData = (JsonStrings) o;
Toast.makeText(MainActivity.this, "" + newsData, Toast.LENGTH_LONG).show();
}
});
listv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
Object o = listv.getItemAtPosition(pos);
final JsonStrings obj= (JsonStrings)o;
Date begindate=obj.ConvertToDate(obj.begin);
final Date enddate=obj.ConvertToEndDate(begindate,Integer.valueOf(obj.tage));
final Calendar begincalendar = Calendar.getInstance();
begincalendar.setTime(begindate);
}
);
return true;
};
}
@Override
protected void onPreExecute() {
super.onPreExecute();
ping = isReachableByPing("*****");
pd = ProgressDialog.show(MainActivity.this, "",
"Laden...", true);
if (ping==false){
Toast.makeText(MainActivity.this, "Server nicht erreichbar" , Toast.LENGTH_LONG).show();
}
}
@Override
protected JSONArray doInBackground(Void... arg0) {
if (ping==true){
try {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("*****");
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
} catch (Exception e) {
Log.e("log_tag", "Error in http connection " + e.toString());
}
// Convert response to string
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(
is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result = sb.toString();
writeToFile(result);
} catch (Exception e) {
Log.e("log_tag", "Error converting result " + e.toString());
}
deptList.clear();
try {
JSONArray array=new JSONArray(result);
for(int i=0;i<array.length();i++){
JSONObject j=array.getJSONObject(i);
JsonStrings d=new JsonStrings();
d.name=j.optString("Ortsname","");
d.kategorie=j.optString("Art","");
d.begin=j.optString("Datum","");
d.tage=j.optString("Tage","");
deptList.add(d);
}
} catch (JSONException e) {
Log.e("log_tag", "No connection " + e.toString());
}
}
else {
try {
JSONArray array=new JSONArray(readFromFile());
for(int i=0;i<array.length();i++){
JSONObject j=array.getJSONObject(i);
JsonStrings d=new JsonStrings();
d.name=j.optString("Ortsname","");
d.kategorie=j.optString("Art","");
d.begin=j.optString("Datum","");
d.tage=j.optString("Tage","");
deptList.add(d);
}
} catch (JSONException e) {
Log.e("log_tag", "Error parsing data " + e.toString());
}
};
return jArray;
}
}
Zuletzt bearbeitet: