在android中刷新整个视图?

时间:2016-04-25 10:53:53

标签: android

我正在调用Web API,我们将响应存储在首选项中,每当我们返回到其他屏幕时,重新加载并从首选项和显示中获取此响应,但同时我们需要在后台调用Web API当成功返回响应时,将再次存储在首选项中并在屏幕上刷新新数据。

请解释这是如何实现的。

2 个答案:

答案 0 :(得分:0)

只需创建方法并随时调用即可。

    @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();
    }

答案 1 :(得分:0)

不要尝试刷新整个视图,而是将设置视图的代码放入一个函数中,然后在需要时调用该函数。在您的情况下,这将在您的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();
}