I need to set up a simple event listener to refresh a ListView once in a while. The problem is I don\'t know how could I generate an event.
I know that
Define a callback interface
public interface NewsUpdateListener
{
void onNewsUpdate();
}
Provide a registration facility on the background thread which gets the RSS feed
class
{
....
ArrayList listeners = new ArrayList ();
....
public void setOnNewsUpdateListener (NewsUpdateListener listener)
{
// Store the listener object
this.listeners.add(listener);
}
....
}
Fire the callback when news is available
....
for (listener : listeners)
{
listener.onNewsUpdate();
}
....
Register listener somewhere during initialization
....
.registerListener
(
new OnNewsUpdateListener() {
onNewsUpdate() {
// process news data
runOnUIThread(new Runnable() {
public void run() {
// refresh list view
}
}
}
}
....