布局 <com.handmark.pulltorefresh.library.PullToRefreshScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/scc" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="200sp" android:id="@+id/viewpager" ></android.support.v4.view.ViewPager> <com.example.com.week_three.MyListView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/lisview" ></com.example.com.week_three.MyListView> </LinearLayout> </com.handmark.pulltorefresh.library.PullToRefreshScrollView> Mylistviewpublic class MyListView extends ListView { public MyListView(Context context) { super(context); } public MyListView(Context context, AttributeSet attrs) { super(context, attrs); } public MyListView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int newheight = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2,MeasureSpec.AT_MOST); super.onMeasure(widthMeasureSpec,newheight); } } //主页面public class MainActivity extends AppCompatActivity { private int pageIndex = 1; private List<Result.NewslistBean> list = new ArrayList<>(); private int operType=1; private String url = "https://api.tianapi.com/wxnew/?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=10&page="+pageIndex; private MyAdapter adapter; private PullToRefreshScrollView scrollView; private ViewPager viewPager; private ListView listView; private List<String> lists; private Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); int index = viewPager.getCurrentItem(); index++; viewPager.setCurrentItem(index); sendEmptyMessageDelayed(0,1000); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); scrollView = findViewById(R.id.scc); viewPager = findViewById(R.id.viewpager); listView = findViewById(R.id.lisview); lists = new ArrayList<>(); initplv(); initlis(); if (NetkUtils.isConn(this)){ viewPager.setAdapter(new MyPagerAdapter(this,lists)); viewPager.setCurrentItem(lists.size()*10); handler.sendEmptyMessage(0); requestNetData(); } } private void requestNetData() { if(NetkUtils.isConn(this)){ MyTask myTask=new MyTask(new MyTask.Icallbacks() { @Override public void updataUiByjson(String jsonstr) { Log.d("zzz","--"+jsonstr); Gson gson=new Gson(); Result result = gson.fromJson(jsonstr, Result.class); if(operType==1){ list.clear(); } //添加新的集合数据 list.addAll(result.getNewslist()); //设置适配器 setLvAdapter(); //关闭头尾视图 scrollView.onRefreshComplete(); } }); myTask.execute(url); }else{ NetkUtils.showNoNet(this); } } private void setLvAdapter() { if(adapter==null){ adapter=new MyAdapter(this,list); listView.setAdapter(adapter); }else { adapter.notifyDataSetChanged(); } } private void initlis(){ lists.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1513679323820&di=d33523977cd2b8c0e831513baa205965&imgtype=0&src=http%3A%2F%2Fc.hiphotos.baidu.com%2Fimage%2Fpic%2Fitem%2Fa686c9177f3e67092b94a19231c79f3df9dc55c3.jpg"); lists.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1513679323820&di=9d535a4011922065fc36e1d0cb3790fa&imgtype=0&src=http%3A%2F%2Fb.hiphotos.baidu.com%2Fimage%2Fpic%2Fitem%2Fac4bd11373f082024ba9705241fbfbedab641ba7.jpg"); lists.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1513679323820&di=7d77f15e8f8556eb72fee9b0962ef985&imgtype=0&src=http%3A%2F%2Ff.hiphotos.baidu.com%2Fimage%2Fpic%2Fitem%2Fc75c10385343fbf25fb0ff46ba7eca8065388f33.jpg"); } private void initplv() { scrollView.setMode(PullToRefreshBase.Mode.BOTH); scrollView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ScrollView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ScrollView> pullToRefreshBase) { operType=1; pageIndex=1; url="https://api.tianapi.com/wxnew/?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=10&page="+pageIndex; requestNetData(); } @Override public void onPullUpToRefresh(PullToRefreshBase<ScrollView> pullToRefreshBase) { operType=2; pageIndex++; url="https://api.tianapi.com/wxnew/?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=10&page="+pageIndex; requestNetData(); } }); }
pulltorefreshscrollview
最新推荐文章于 2021-06-23 14:39:40 发布