Im sehr neue auf Android aktualisieren. im so dass diese teturial aber ich habe ein Problem beim Aktualisieren und kann nicht verstehen, wie meine Listenansicht aktualisierenWie Android Android listview evry 10 Sekunden
// Creating volley request obj
JsonArrayRequest movieReq = new JsonArrayRequest(url,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.d(TAG, response.toString());
hidePDialog();
// Parsing json
for (int i = 0; i < response.length(); i++) {
try {
JSONObject obj = response.getJSONObject(i);
Movie movie = new Movie();
movie.setTitle(obj.getString("title"));
movie.setThumbnailUrl(obj.getString("image"));
movie.setRating(((Number) obj.get("rating"))
.doubleValue());
movie.setYear(obj.getInt("releaseYear"));
// Genre is json array
JSONArray genreArry = obj.getJSONArray("genre");
ArrayList<String> genre = new ArrayList<String>();
for (int j = 0; j < genreArry.length(); j++) {
genre.add((String) genreArry.get(j));
}
movie.setGenre(genre);
// adding movie to movies array
movieList.add(movie);
} catch (JSONException e) {
e.printStackTrace();
}
}
// notifying list adapter about data changes
// so that it renders the list view with updated data
adapter.notifyDataSetChanged();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
hidePDialog();
}
});
/** REFRESH HERE /**
Thread t = new Thread() {
@Override
public void run() {
try {
while (!isInterrupted()) {
Thread.sleep(10000);
runOnUiThread(new Runnable() {
@Override
public void run() {
Log.e(TAG, "EVRY 10 SECOND START NOW ");
listView.invalidateViews();
listView.refreshDrawableState();
adapter.notifyDataSetChanged();
// Log.e(TAG, String.valueOf(movieList));
// fire the event
}
});
}
} catch (InterruptedException e) {
}
}
};
t.start();
// Adding request to request queue
AppController.getInstance().addToRequestQueue(movieReq);
ich versuche, alle Methoden google ... aber kein Glück dieser notifyDataSetChanged() nicht funktioniert ...
listView.invalidateViews();
listView.refreshDrawableState();
adapter.notifyDataSetChanged();
Haben Sie wieder den Web-Service anfordern möchten Sie treffen? –
Ja neue Anfrage und neue json mit neuen Artikeln – ctcp
Sie können Timer verwenden, um Webservice nach 10s aufrufen und dann onResponse() aktualisieren Sie Ihre Listview –