//+++++++++++TwoActivity++++++++++
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import java.util.ArrayList;
public class TwoActivity extends AppCompatActivity {
private ViewPager viewPager;
private DrawerLayout drawerLayout;
private ActionBar actionBar;
private ActionBarDrawerToggle mToggle;
private RadioGroup radioGroup;
private RadioButton radioButton;
private RadioButton dianying;
private RadioButton yingyuan;
private RadioButton yanchu;
private RadioButton wode;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two);
viewPager = findViewById(R.id.viewPager);
drawerLayout = findViewById(R.id.drawerLayout);
actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
mToggle = new ActionBarDrawerToggle(this,drawerLayout,R.string.guan,R.string.kai);
mToggle.syncState();
drawerLayout.addDrawerListener(mToggle);
doFragment();
}
private void doFragment() {
ArrayList<Fragment> list=new ArrayList<>();
list.add(new OneFragment());
list.add(new TwoFragment());
list.add(new ThreeFragment());
list.add(new FourFragment());
list.add(new FiveFragment());
MyPagerAdapter myPagerAdapter=new MyPagerAdapter(getSupportFragmentManager(),list);
viewPager.setAdapter(myPagerAdapter);
initView();
}
private void initView() {
radioGroup = findViewById(R.id.radio);
radioButton = findViewById(R.id.shouye);
dianying = findViewById(R.id.dianying);
yingyuan = findViewById(R.id.yingyuan);
yanchu = findViewById(R.id.yanchu);
wode = findViewById(R.id.wode);
ArrayList<Fragment> mData=new ArrayList<>();
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.shouye:
viewPager.setCurrentItem(0);
break;
case R.id.dianying:
viewPager.setCurrentItem(1);
break;
case R.id.yingyuan:
viewPager.setCurrentItem(2);
break;
case R.id.yanchu:
viewPager.setCurrentItem(3);
break;
case R.id.wode:
viewPager.setCurrentItem(4);
break;
}
}
});
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (mToggle.onOptionsItemSelected(item)){
return true;
}
return super.onOptionsItemSelected(item);
}
}
//+++++++++++++适配器(MyPagerAdapter )++++++++++++
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import java.util.ArrayList;
public class MyPagerAdapter extends FragmentPagerAdapter {
private ArrayList<Fragment> list;
public MyPagerAdapter(FragmentManager fm, ArrayList<Fragment> list) {
super(fm);
this.list = list;
}
public void setFragment(ArrayList<Fragment> fragmentArrayList){
list=fragmentArrayList;
}
@Override
public Fragment getItem(int position) {
return list.get(position);
}
@Override
public int getCount() {
return list.size();
}
}
//+++++++++++++侧拉菜单+++++++++++
++++++++++++string.xml++++++++++++
<resources+>
MN1</string+>
开启</string+>
关闭</string+>
</resources+>
//++++++++++OneFragment+++++++++
import android.annotation.SuppressLint;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
import com.bwie.asus.mn1.Bean.JieKou;
import com.bwie.asus.mn1.Bean.LunBo;
import com.bwie.asus.mn1.Utils.MyUtils;
import com.bwie.asus.mn1.adapter.ImageAdapter;
import com.bwie.asus.mn1.adapter.MyBaseAdapter;
import com.google.gson.Gson;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import xlistview.bawei.com.xlistviewlibrary.XListView;
public class OneFragment extends Fragment {
private int x=1;
private String lunbo="http://www.xieast.com/api/banner.php";
private String jiekou="http://172.17.8.100/movieApi/movie/v1/findHotMovieList?page="+x+"&count=10";
private List<JieKou.ResultBean> result=new ArrayList<>();
private ViewPager pager;
private XListView xListView;
private MyUtils myUtils;
private ImageAdapter adapter;
private MyBaseAdapter myBaseAdapter;
private MyAsyncTack myAsyncTack;
private View view;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.frag1, container, false);
pager = view.findViewById(R.id.pager);
xListView = view.findViewById(R.id.xlistView);
xListView.setPullLoadEnable(true);
xListView.setPullRefreshEnable(true);
myUtils = new MyUtils();
new Thread(){
@Override
public void run() {
super.run();
String data = myUtils.Data(lunbo);
Gson gson=new Gson();
LunBo lunBo = gson.fromJson(data, LunBo.class);
List<LunBo.DataBean> data1 = lunBo.getData();
adapter = new ImageAdapter(getActivity(),data1);
Message message=new Message();
message.what=0;
message.obj=adapter;
handler.sendMessage(message);
}
}.start();
myAsyncTack = new MyAsyncTack();
myAsyncTack.execute(jiekou);
xListView.setXListViewListener(new XListView.IXListViewListener() {
public void onRefresh() {
handler.postDelayed(new Runnable() {
@Override
public void run() {
x=1;
jiekou="http://172.17.8.100/movieApi/movie/v1/findHotMovieList?page="+x+"&count=10";
String data = myUtils.Data(jiekou);
Gson gson=new Gson();
JieKou kou = gson.fromJson(data, JieKou.class);
List<JieKou.ResultBean> result1 = kou.getResult();
result.addAll(result1);
handler.sendEmptyMessage(1);
result.clear();
}
},2000);
}
public void onLoadMore(){
handler.postDelayed(new Runnable() {
@Override
public void run() {
x++;
jiekou="http://172.17.8.100/movieApi/movie/v1/findHotMovieList?page="+x+"&count=10";
new Thread(){
@Override
public void run() {
super.run();
String data = myUtils.Data(jiekou);
Gson gson=new Gson();
JieKou jieKou = gson.fromJson(data, JieKou.class);
if (jieKou.getMessage().equals("查询成功")){
return;
}
List<JieKou.ResultBean> result1 = jieKou.getResult();
result.addAll(result1);
handler.sendEmptyMessage(1);
}
}.start();
handler.sendEmptyMessage(3);
}
},1000);
}
});
return view;
}
public class MyAsyncTack extends AsyncTask<String,Integer,Object>{
@Override
protected Object doInBackground(String... strings) {
String tu=strings[0];
String data = myUtils.Data(tu);
return data;
}
@Override
protected void onPostExecute(Object o) {
super.onPostExecute(o);
if (o!=null){
String s= (String) o;
Message message=new Message();
message.what=6;
message.obj=s;
handler.sendMessage(message);
}
}
}
Handler handler=new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 0:
ImageAdapter adapter = (ImageAdapter) msg.obj;
pager.setAdapter(adapter);
break;
case 1:
Toast.makeText(getActivity(),"下拉刷新"+result,Toast.LENGTH_LONG).show();
myBaseAdapter.notifyDataSetChanged();
Close();
break;
case 3:
Toast.makeText(getActivity(),"上拉加载"+result,Toast.LENGTH_LONG).show();
myBaseAdapter.notifyDataSetChanged();
Close();
break;
case 6:
String s= (String) msg.obj;
Gson gson=new Gson();
JieKou jieKou= gson.fromJson(s,JieKou.class);
List<JieKou.ResultBean>result = jieKou.getResult();
myBaseAdapter=new MyBaseAdapter(getActivity(), (ArrayList<JieKou.ResultBean>) result);
xListView.setAdapter(myBaseAdapter);
break;
}
}
};
private void Close(){
Date date=new Date();
date.getTime();
xListView.stopLoadMore();
xListView.stopRefresh();
xListView.setRefreshTime(""+date);
}
}
//布局
<android.support.v4.widget.DrawerLayout xmlns:android=“http://schemas.android.com/apk/res/android”
xmlns:app=“http://schemas.android.com/apk/res-auto”
xmlns:tools=“http://schemas.android.com/tools”
android:layout_width=“match_parent”
android:layout_height=“match_parent”
android:id="@+id/drawerLayout"
tools:context=".TwoActivity">
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width=“match_parent”
android:layout_height=“wrap_content”
android:layout_weight=“1”
>
</android.support.v4.view.ViewPager>
<fragment
android:layout_width="300dp"
android:layout_height="match_parent"
class="com.bwie.asus.mn1.BlankFragment"
android:layout_gravity="start"/>
</android.support.v4.widget.DrawerLayout+>
//++++++BlankFragment++++++
import android.app.Fragment;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class BlankFragment extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.frag_blank,container, false);
return view;
}
}