如何在android中只调用一次web服务

时间:2015-09-16 10:15:16

标签: android web-services tabs

我的视图中有三个标签。每当我按下每个标签时,一些布局将被充气并完成一个Web服务调用。我通过此Web服务调用将一些数据填充到我的虚增视图中。一切都很好。但问题是我每次第二次按标签时都不想调用Web服务。应自动填充以前的数据,而不调用Web服务。我认为我不能使用onResume()方法。谷歌搜索了很多页面以找到这个答案,但没有任何帮助。如有必要,请发布代码。提前谢谢。

这些是我迄今为止的解决方法。

TabHost setCurrentTab only calls oncreate method for Activity in Tab once

http://developer.android.com/training/basics/activity-lifecycle/recreating.html

http://jnastase.alner.net/archive/2010/10/27/handling-orientation-change-in-android.aspx

3 个答案:

答案 0 :(得分:1)

您的网络服务应返回一些数据,将此数据保存到本地内存,并在每次此数据为空时检查,如果为null,则调用服务,否则从本地数据中膨胀。

答案 1 :(得分:1)

首先,您应该知道“not callingpendingcalled的来电状态。您必须将其存储在某个位置(activityshared preferencesdatabase等)然后拨打电话。现在,对于数据:您应该实现一些缓存(再次,在activityshared preferencesdatabase或甚至plain files中)。 然后,在任何调用状态下,您都可以显示 cache 中的数据(如果存在),并且在调用完成后,您可以将新数据存储在缓存中并显示它。

答案 2 :(得分:0)

每当在一个选项卡中进行任何更改时,将值存储在某个变量中,每当下次初始化页面时,都会使用旧的选定值进行初始化。请试一试..它可以解决问题..