众所周知,github上拥有很多优秀的Android项目,作为一个Android的开发者,不学习github的优秀项目是不行的,这篇文章将较详细地讲述怎么使用github上的项目运用到自己的项目上。
第一步下载开源项目Android-PullToRefresh https://github.com/chrisbanes/Android-PullToRefresh ,如下图,可以通过clone,更简单是直接下载zip,解压出来。
第二步,详细讲下怎么用:
1.打开eclipse,File-Import-Existing Android Code Into Workspace,把Library、PullToRefreshListFragment、PullToRefreshViewPager、sample(原来自带的参考实例,可以参考)导入到eclipse中,打开此library,右键library,properties-Android-Library-勾选Is Library,在PullToRefreshListFragment、PullToRefreshViewPager两个项目上还要把Library添加为依赖库(因为工作空间的改变),sample上要把Library、PullToRefreshListFragment、PullToRefreshViewPager添加为依赖库,此时应该可以运行sample的项目到虚拟机上或手机上。
注意:导入项目时候一定要勾选导入到现有的工作空间上。
2.接着讲一下怎么在自己的项目引用:
2.1 . 按照常规兴建自己的程序后,右键主程序,properties-Android-Library-Add,把Library、PullToRefreshListFragment、PullToRefreshViewPager添加为依赖库.
2.2 . 在程序activity_main.xml添加引用项目的一个类。
<com.handmark.pulltorefresh.library.PullToRefreshListView android:id="@+id/mylv" android:layout_height="fill_parent" android:layout_width="fill_parent"> </com.handmark.pulltorefresh.library.PullToRefreshListView>
2.3. 然后回到MainActivity中,把 PullToRefreshListView 当做ListVeiw来使用(详见ListVeiw的使用),记得要通过组织导入把
private PullToRefreshListView lv; private ArrayAdapter<String> adapter; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); List<String> arr =new ArrayList<String>(); arr.add("test"); arr.add("test1"); lv = (PullToRefreshListView) findViewById(R.id.mylv); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arr); lv.setAdapter(adapter); lv.setOnRefreshListener(new OnRefreshListener<ListView>() { @Override public void onRefresh(PullToRefreshBase<ListView> refreshView) { // TODO Auto-generated method stub new AsyncTask<Void, Void, Void>() { @Override protected Void doInBackground(Void... params) { // TODO Auto-generated method stub try { Thread.sleep(2800); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } protected void onPostExecute(Void result) { adapter.addAll("test","成功"); lv.onRefreshComplete(); }; }.execute(); } });
2.4. 项目到这里就结束了,可能需要调试一下,如果遇到什么问题可以留言交流一下。