<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <com.handmark.pulltorefresh.library.PullToRefreshScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/psv"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <FrameLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="200dp" android:id="@+id/my_viewpager"> </android.support.v4.view.ViewPager> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:id="@+id/my_point" android:gravity="center" android:layout_gravity="bottom"></LinearLayout> </FrameLayout> <wangguifa.bwie.com.all.MyListview android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/my_listview" > </wangguifa.bwie.com.all.MyListview> </LinearLayout> </com.handmark.pulltorefresh.library.PullToRefreshScrollView>
</LinearLayout>
//fragment
public class MessageFragment extends Fragment { private ListView listview; private ViewPager viewpager; private LinearLayout point; private List<Humen.DataBean> list = new ArrayList<>(); private List<String> lists = new ArrayList<>(); private PullToRefreshScrollView psv; private int typeInt = 0; private int pageInt = 1; private int vpint = 50; private ListAdapter adapter; private List<ImageView> img_lists = new ArrayList<>(); private String netString = "http://www.yulin520.com/a2a/impressApi/news/mergeList?pageSize=10&page="+pageInt; private Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); if(msg.what==1){ vpint++; viewpager.setCurrentItem(vpint); selectPoint(vpint); handler.sendEmptyMessageDelayed(1,1000); } } }; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View v = inflater.inflate(R.layout.message_layout, container, false); listview = v.findViewById(R.id.my_listview); viewpager = v.findViewById(R.id.my_viewpager); point = v.findViewById(R.id.my_point); psv = v.findViewById(R.id.psv); return v; } @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); initViewPager(); initPoint(); initPsv(); requestData(); } private void selectPoint(int s){ for (int i = 0; i < img_lists.size(); i++) { if (i==s%img_lists.size()){ img_lists.get(i).setImageResource(R.drawable.selected_point); }else { img_lists.get(i).setImageResource(R.drawable.unselected_point); } } } private void initPoint() { for (int i = 0; i <lists.size() ; i++) { ImageView imageView = new ImageView(getActivity()); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); params.setMargins(0,0,5,0); imageView.setLayoutParams(params); if(i==0){ imageView.setImageResource(R.drawable.selected_point); }else { imageView.setImageResource(R.drawable.unselected_point); } point.addView(imageView); img_lists.add(imageView); } } private void initViewPager() { /*lists.add("http://m.xxxiao.com//wp-content//uploads//sites//3//2016//07//m.xxxiao.com_56a78d0a3cfd0e39b31fd11ac709ad4f-683x1024.jpg"); lists.add("http://image.hnol.net//c//2016-10//31//15//20161031151544351-5349024.jpg"); lists.add("http://image.hnol.net//c//2016-07//02//21//201607022155295131-2381913.jpg"); lists.add("http://image.hnol.net//c//2016-07//03//16//201607031631335861-1559530.jpg"); //http:\/\/m.xxxiao.com\/wp-content\/uploads\/sites\/3\/2016\/07\/m.xxxiao.com_05e810073b50fb8a8d17a8ed483e8490-683x1024.jpg lists.add("http://m.xxxiao.com//wp-content//uploads//sites//3//2015//12//m.xxxiao.com_558c0bb213ae3cfb4e5d783636f03388-760x500.jpg");*/ lists.add("http://f.expoon.com//sub//news//2016//01//20//348021_230x162_0.jpg"); lists.add("http://f.expoon.com//sub//news//2016//01//19//113912_230x162_0.jpg"); lists.add("http://f.expoon.com//sub//news//2016//01//19//650175_230x162_0.jpg"); lists.add("http://f.expoon.com//sub//news//2016//01//19//321787_230x162_0.jpg"); lists.add("http://f.expoon.com//sub//news//2016//01//19//376254_230x162_0.jpg"); viewpager.setAdapter(new MyVpAdapter(getActivity(),lists)); viewpager.setCurrentItem(50); handler.sendEmptyMessageDelayed(1,1000); } private void initPsv() { psv.setMode(PullToRefreshBase.Mode.BOTH); psv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ScrollView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ScrollView> pullToRefreshBase) { typeInt = 0; pageInt = 1; netString = "http://www.yulin520.com/a2a/impressApi/news/mergeList?pageSize=10&page="+pageInt; new MyTask().execute(netString); psv.onRefreshComplete(); } @Override public void onPullUpToRefresh(PullToRefreshBase<ScrollView> pullToRefreshBase) { typeInt = 1; pageInt++; netString = "http://www.yulin520.com/a2a/impressApi/news/mergeList?pageSize=10&page="+pageInt; new MyTask().execute(netString); psv.onRefreshComplete(); } }); } void requestData(){ new MyTask().execute(netString); } class MyTask extends AsyncTask<String,Void,String>{ @Override protected String doInBackground(String... strings) { String netData = NetUtils.getNetData(strings[0]); Log.i("zzz",netData); return netData; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson = new Gson(); Humen humen = gson.fromJson(s, Humen.class); List<Humen.DataBean> data = humen.getData(); if(typeInt==0){ list.clear(); } list.addAll(data); setAdapter(); } } void setAdapter(){ if(adapter==null){ listview.setAdapter(new ListAdapter(getActivity(),list)); }else { adapter.notifyDataSetChanged(); } } }
//activity
public class ShowActivity extends AppCompatActivity { private RadioGroup rg; private FrameLayout my_frame; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_show); rg = findViewById(R.id.my_radio_group); my_frame = findViewById(R.id.my_frame); //view_pager.setAdapter(); getSupportFragmentManager().beginTransaction().replace(R.id.my_frame,new ShowVpFragment()).commit(); rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { switch (i){ case R.id.rg_01: getSupportFragmentManager().beginTransaction().replace(R.id.my_frame,new ShowVpFragment()).commit(); break; case R.id.rg_02: getSupportFragmentManager().beginTransaction().replace(R.id.my_frame,new MessageFragment()).commit(); } } }); } }