我正在開發一個應用程序,並且需要顯示來自另一個班級中運行的線程的Toast消息。 我閱讀了有關runOnUiThread,但它不起作用..在主要活動有一個調用另一個Java類,這裏有連接到一個網絡服務器,我從服務器處理Http的消息。在這裏,如果我收到204條消息,我需要表示祝酒。我怎樣才能實現runOnUiThread?如何顯示來自另一個班級的線程的Toast消息
感謝
我正在開發一個應用程序,並且需要顯示來自另一個班級中運行的線程的Toast消息。 我閱讀了有關runOnUiThread,但它不起作用..在主要活動有一個調用另一個Java類,這裏有連接到一個網絡服務器,我從服務器處理Http的消息。在這裏,如果我收到204條消息,我需要表示祝酒。我怎樣才能實現runOnUiThread?如何顯示來自另一個班級的線程的Toast消息
感謝
您通過活動的參照該工人類並調用runOnUiThread這樣
activity.runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(activity, "Your Message here", Toast.LENGTH_SHORT).show();
}
});
我明白我的錯:在我的班級裏,我試圖打電話給我的活動上下文,但我沒有通過參考...所以通過參考,它的工作原理.. 感謝和遺憾的浪費時間! – Yoshi
@Yoshi沒問題。接受答案,如果它有幫助。 –
我建議你使用Retrofit庫。它爲你處理所有線程的東西,你不必重新發明輪子。
//make request in ui thread
yourService.getMyData().enqueue(new Callback<YourResponse>() {
@Override
public void onResponse(Response<YourResponse> response) {
//handle responses in ui thread
if (response.isSuccess()) {
//Toast.makeText()..
} else {
//error
}
}
@Override
public void onFailure(Throwable t) {
//toast the error
}
});
美麗吧?
你不執行它,它已經準備好使用 –
你知道與_interface_? – Piyush