我有一個按鈕的代碼,我想建立一個套接字連接,然後嘗試通過網絡發送數據。當我沒有服務器的套接字,它需要幾秒鐘的應用程序識別,我得到一個錯誤。在這段時間內,應用程序不會做任何事情(如你所期望的)爲用戶提供一個簡單的通知,告訴他應用程序沒有中斷,我想調出一個ProgressBar。直接調出對話框?
private void sendButtonListener(Button sendButton, final String server,
final int port) {
sendButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
refreshInput();
showDialog(DIALOG_CONNECTING);
//Getting the SocketConnection and try to send the Data
attempToSendXML(builder, profilename);
dismissDialog(DIALOG_CONNECTING);
}
});
}
我的問題是,它似乎showDialog()
方法是onClick(View v)
方法完成後會彈出進度。因此,對於我的示例,它沒有顯示任何內容(它只是掛起,直到attempToSendXML()
方法完成),因爲我試圖發送數據後關閉對話框。
我希望你們能明白我的觀點並能幫助我。我一直在尋找2小時左右,真的沒有得到它...