2011-12-29 53 views
3

我只是想知道如何做数据的负载为Twitter和Facebook应用程序...安卓:加载数据,如Facebook和Twitter

就像当你到达你还在与UI交互页面的末端,并给出了进一步的数据正在加载..这是如何编程完成的。

更清楚的是,当你滚动你的新闻提要时,当你达到一个点它显示一个圆形描绘进一步的数据正在加载,然后当进一步的新饲料可用,你也可以滚动,以及..我希望我很清楚..我只是想知道这种情况是如何实现的。是否有任何例子?

+0

我建议你开始阅读这里: http://developer.android.com /training/index.html问候, Giacomo – gsscoder 2011-12-29 07:12:00

回答

6

这里有几个链接可能会让你通过它。

http://github.com/commonsguy/cwac-endless

Android Endless List

http://www.androidguys.com/2009/10/21/tutorial-autogrowing-listview/

从连接两个样本的逻辑,

public class Test extends ListActivity implements OnScrollListener { 

Aleph0 adapter = new Aleph0(); 

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setListAdapter(adapter); 
    getListView().setOnScrollListener(this); 
} 

public void onScroll(AbsListView view, 
    int firstVisible, int visibleCount, int totalCount) { 

    boolean loadMore = /* maybe add a padding */ 
     firstVisible + visibleCount >= totalCount; 

    if(loadMore) { 
     adapter.count += visibleCount; // or any other amount 
     adapter.notifyDataSetChanged(); 
    } 
} 

public void onScrollStateChanged(AbsListView v, int s) { }  

class Aleph0 extends BaseAdapter { 
    int count = 40; /* starting amount */ 

    public int getCount() { return count; } 
    public Object getItem(int pos) { return pos; } 
    public long getItemId(int pos) { return pos; } 

    public View getView(int pos, View v, ViewGroup p) { 
      TextView view = new TextView(Test.this); 
      view.setText("entry " + pos); 
      return view; 
    } 
} 
}