在我的 UpdateFragment 中,我有一個(gè)按鈕。當(dāng)我單擊此按鈕時(shí),它會被禁用并從服務(wù)調(diào)用方法。如何將按鈕從我的服務(wù)方法改回啟用?/* THIS IS updateFRAGMENT */btnUpdateApp.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { FileUtil.logInformation(this.getClass().getName(), getResources().getText(R.string.manual_update_start).toString()); //disable button btnUpdateApp.setEnabled(false); ServiceUtils s = new ServiceUtils(); s.getUpdateInfos(); } });/* THIS IS MY SERVICE METHOD */public void getUpdateInfos(){ try { // ... some steps here ... //I want to return my button enabled here } catch (Exception ex){ ex.printStackTrace(); }}
2 回答

幕布斯6054654
TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊
調(diào)用時(shí)getUpdateInfos
傳遞對按鈕的引用,如下所示:
s.getUpdateInfos(btnUpdateApp);
使getUpdateInfos
方法接受新參數(shù):
public void getUpdateInfos(YourButtonType btnUpdateApp) {
完成操作后,使用參考將按鈕更改回啟用狀態(tài):
btnUpdateApp.setEnabled(true);

一只名叫tom的貓
TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊
您需要創(chuàng)建一個(gè)偵聽器并將其傳遞給服務(wù)。像這樣的事情將使這項(xiàng)工作:
public interface ServiceListener(){
void onServiceFinished();
}
使您的片段實(shí)現(xiàn)偵聽器并在 onServiceFinished 方法中重新啟用您的按鈕。在您的服務(wù)中,只需在需要時(shí)調(diào)用偵聽器的方法。
添加回答
舉報(bào)
0/150
提交
取消