Введите следующий код в вашем классе:
// Need handler for callbacks to UI Threads
// For background operations
final Handler mHandler = new Handler();
// Create Runnable for posting results
final Runnable mUpdateResults = new Runnable() {
public void run() {
// Do your task which needs to get done after webservice call is complete.
}
};
А для вызова веб-службы используйте следующий код в событии кнопки:
new Thread() {
public void run() {
// Place the webservice call here.
mHandler.post(mUpdateResults);
}
}.start();
На самом деле вы ищете многопоточность, все вызовы веб-службы и сетевые операции должны проходить в отдельном потоке.
После вызова потока start () вы можете делать все, что захотите, и это будет сделано мгновенно без каких-либо задержек (в вашем случае показ этой нажатой кнопки).