//控件
<com.handmark.pulltorefresh.library.PullToRefreshListView android:id="@+id/pull_refresh_list" android:layout_width="fill_parent" android:layout_height="fill_parent" android:cacheColorHint="#00000000" android:divider="#19000000" android:dividerHeight="4dp" android:fadingEdge="none" android:fastScrollEnabled="false" android:footerDividersEnabled="false" android:headerDividersEnabled="false" android:smoothScrollbar="true" />
package com.example.pullto; import android.os.Handler; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ListView; import android.widget.TextView; import com.google.gson.Gson; import com.handmark.pulltorefresh.library.PullToRefreshBase; import com.handmark.pulltorefresh.library.PullToRefreshListView; import java.util.Date; import java.util.List; public class MainActivity extends AppCompatActivity { private PullToRefreshListView pi; private List<JBean.DataBean> data; private Handler handler = new Handler(); private Shipei shipei; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); pi = (PullToRefreshListView) findViewById(R.id.pull_refresh_list); pi.setMode(PullToRefreshBase.Mode.BOTH); shuju(); pi.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { //下啦 @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) { data.clear(); shuju(); } //上拉 @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) { la(); } }); } public void shuju(){ new Thread(){ @Override public void run() { super.run(); final String getjson = Qinqiu.getjson(); runOnUiThread(new Runnable() { @Override public void run() { Gson gson = new Gson(); JBean jBean = gson.fromJson(getjson, JBean.class); data = jBean.data; shipei = new Shipei(); pi.setAdapter(shipei); pi.onRefreshComplete(); } }); } }.start(); } public void la(){ new Thread(){ @Override public void run() { super.run(); runOnUiThread(new Runnable() { @Override public void run() { data.addAll(data); shipei.notifyDataSetChanged(); pi.onRefreshComplete(); } }); } }.start(); } class Shipei extends BaseAdapter{ @Override public int getCount() { return data.size(); } @Override public Object getItem(int i) { return data.get(i); } @Override public long getItemId(int i) { return i; } @Override public View getView(int i, View view, ViewGroup viewGroup) { view = View.inflate(MainActivity.this,R.layout.tian,null); TextView tv = view.findViewById(R.id.tv); tv.setText(data.get(i).title); return view; } } }