2016-12-05 37 views
1

我有一個問題,我從一個URL獲取數據並將其設置爲Table,但數據幾乎爲10到15個值。那麼我在表格中獲取數據很容易就意味着表格數據在較少的時間內填充。顯示一些數據到表中並在後臺運行web服務

但是,如果數據幾乎是500到600的值,那麼必須等到所有數據都像我用過的那樣ProgressView因此用戶必須等到所有響應都沒有來。

有什麼辦法可以解決這個問題,先設置一些數據,然後再設置一些數據。

任何幫助將不勝感激

+0

您可以創建自己的自定義隊列並在其上獲取服務器請求,當收到響應後,您可以重新加載主隊列中的表視圖。或主線程 –

+0

是否可以在Chunk中獲取數據。來自Web服務 –

+0

是的,您可以使用alamofire進行Web服務請求 –

回答

1

基本上這是一個不好的做法,一次獲取大量數據並讓用戶等待。理想情況下,只有在必要時才能獲取數據。對於你的情況,我建議你使用分頁機制

以下僅僅是約分頁,你可以用粗略的想法:

  1. 當您從webservice加載數據,發送一個名爲 PAGE_COUNT and PREVIOUS_PAGE_COUNT.
  2. 對於第一次兩個參數發送PAGE_COUNT = nuber_of_values_you_want_to_fetch_initially and PREVIOUS_PAGE_COUNT = 0
  3. 當用戶向下滾動顯示裝載機在桌面的底部,並再次打網頁服務,但與PREVIOUS_PAGE_COUNT = nuber_of_values_you_want_to_fetch_initially + PAGE_COUNT
  4. 這ap proach將需要從後端進行一些修改,例如檢查初始頁數,然後從 數據庫獲取下一條記錄。

我希望這會幫助你。

相關問題