您必須使用自己的主題。這裏是使用AsyncTask的解決方案....
將所有代碼放入您的Activity類。
public void toCallAsynchronous() {
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
try {
//ASYNC TASK OBJECT CALL EVERY 2 SECOND
AutoPretraga zadatak = new AutoPretraga();
zadatak.execute(txtPretraga.getText().toString());
}
});
}
};
timer.schedule(doAsynchronousTask, 0, 2000); // execute in every 2 second
}
的AsyncTask類.....
private class AutoPretraga extends
AsyncTask<String, Object, List<Korisnici>> {
@Override
protected List<Korisnici> doInBackground(String... params) {
//DONT TOUCH GUI OBJECT IN THIS FUNCTION !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//CALL DATABASE IN THIS FUNCTION
return null;
}
@Override
protected void onPostExecute(List<Korisnici> result) {
super.onPostExecute(rezultat);
//IN THIS FUNCTION YOU HAVE RESUT FROM DATABASE
//AND YOU CAN CHANGE GUI
}
}
使用的AsyncTask,而不是一個正常的線程。 – hardartcore 2013-03-01 12:42:12
您可以嘗試使用異步任務。 這裏是例如: [異步任務] [1] [1]:http://stackoverflow.com/questions/14607053/update-data-to-server-in-the -background-android/14607791#14607791 – 2013-03-01 12:44:58
搜索之前問。 – njzk2 2013-03-01 12:53:24