我打電話給Web API,我們將響應存儲在首選項中,每當我們回到其他屏幕重新加載並從首選項中獲取此響應並顯示時,但同時我們需要在後臺調用Web API,以及何時響應成功返回,並存儲在首選項中並在屏幕上刷新新數據。在Android中刷新整個視圖?
請解釋如何做到這一點。
我打電話給Web API,我們將響應存儲在首選項中,每當我們回到其他屏幕重新加載並從首選項中獲取此響應並顯示時,但同時我們需要在後臺調用Web API,以及何時響應成功返回,並存儲在首選項中並在屏幕上刷新新數據。在Android中刷新整個視圖?
請解釋如何做到這一點。
這很簡單,只需創建方法並隨時調用即可。
@Override
protected void onResume() {
super.onResume();
getDataFromPreference();
getDataFromWebAPI();
}
public void getDataFromPreference()
{
//featch all data from preference and display on view
}
public void getDataFromWebAPI()
{
//featch all data from web API
//Write your data into preference
getDataFromPreference();
}
謝謝,這個很不錯,適合我的相關任務 – sillicon46
不是試圖刷新整個視圖,而是將設置視圖的代碼放入函數中,然後在需要時調用該函數。在你的情況下,這將在你的Activity/Fragment的onResume()
方法中,然後在API調用完成時。
例子:
private void refreshDisplayUsername() {
String username = sharedPreferences.getString("username", "");
usernameView.setText(username);
}
@Override
public void onResume() {
super.onResume();
refreshDisplayUsername();
}
// Put this code wherever you're handling the API response
public void onAPICallFinished() {
// Store data into SharedPrefs here
refreshDisplayUsername();
}
每次顯示從SharedPreference數據並調用WS每次和從WS加載的數據存儲,並刷新數據。而已! –
如果你的意思是根據你的邏輯從任何事件重新啓動應用程序視圖,你可以使用 – Haroon
無需刷新只需在onResume()方法中編寫你的代碼 –