适配器
public class MAdapter extends BaseAdapter {
private Context context;
private List<InBean.ResultBean> list;
public MAdapter(Context context) {
this.context = context;
list=new ArrayList<>();
}
public void setList(List<InBean.ResultBean> list) {
this.list.clear();
if (list!=null){
this.list = list;
}
notifyDataSetChanged();
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView==null){
convertView=LayoutInflater.from(context).inflate(R.layout.item_in,parent,false);
holder=new ViewHolder();
holder.imageView=convertView.findViewById(R.id.item_imager);
holder.textView1=convertView.findViewById(R.id.item_text1);
holder.textView2=convertView.findViewById(R.id.item_text2);
convertView.setTag(holder);
}else {
holder= (ViewHolder) convertView.getTag();
}
holder.textView1.setText(list.get(position).getName());
holder.textView2.setText(list.get(position).getSummary());
//使用Imageloder的框架
ImageLoader.getInstance().displayImage(list.get(position).getImageUrl(),holder.imageView);
return convertView;
}
//复用类
class ViewHolder{
ImageView imageView;
TextView textView1,textView2;
}
}
tablayout适配器
public class MyAdapter extends FragmentPagerAdapter {
private String [] names=new String[]{“正在热映”,“即将热映”};
public MyAdapter(FragmentManager fm) {
super(fm);
}
private String apiUrl ="";
@Override
public Fragment getItem(int i) {
switch (i){
case 0:
apiUrl="http://172.17.8.100/movieApi/movie/v1/findHotMovieList?page=1&count=10";
default:
apiUrl="http://172.17.8.100/movieApi/movie/v1/findReleaseMovieList?page=1&count=10";
}
Bundle bundle = new Bundle();
bundle.putString("url",apiUrl);
ZFragmentA zFragmentA = new ZFragmentA();
zFragmentA.setArguments(bundle);
return zFragmentA;
}
@Override
public int getCount() {
return names.length;
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return names[position];
}
}
pulltorefresh列表展示
public class ZFragmentA extends BaseFragment {
private PullToRefreshListView pul;
private MAdapter madapter;
private int page=10;
private String url;
/* private List<InBean.ResultBean> list=new ArrayList<>();*/
//获取数据
@Override
protected void initData() {
//page=1&count=10
url = getArguments().getString("url");
// 新建一个class 异步请求news数据
new InTask().execute(url+page/*+"page="+1+"&count="+10*/);
}
@Override
protected void initView(View view) {
//获取资源id
pul=view.findViewById(R.id.pul);
//创建适配器
madapter=new MAdapter(getActivity());
pul.setAdapter(madapter);
//上拉加载下拉刷新
setListener();
}
// 上拉加载下拉刷新
private void setListener() {
//设置监听事件
pul.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2() {
//下拉加载
@Override
public void onPullDownToRefresh(PullToRefreshBase refreshView) {
/* list.clear();*/
page=1;
new InTask().execute(url);
pul.onRefreshComplete();
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
new InTask().execute(url+(++page));
pul.onRefreshComplete();
}
});
}
class InTask extends AsyncTask<String,Void,List<InBean.ResultBean>>{
@Override
protected List<InBean.ResultBean> doInBackground(String... strings) {
try {
String s = HttpUtils.get(strings[0]);
Gson gson=new Gson();
InBean inBean = gson.fromJson(s, InBean.class);
return inBean.getResult();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
//展示数据
@Override
protected void onPostExecute(List<InBean.ResultBean> resultBeans) {
super.onPostExecute(resultBeans);
//添加数据
madapter.setList(resultBeans);
}
}
@Override
protected int setview() {
return R.layout.zfragment;
}
}