PullToRefresh+Banner无限轮播
来源:互联网 发布:女淘宝网店铺名字大全 编辑:程序博客网 时间:2024/06/08 11:26
ArrayList<Bean.DataBean> li=new ArrayList<>();
String[] url={"http://pic8.nipic.com/20100701/5290458_114840036316_2.jpg",
"http://pic2.nipic.com/20090424/1468853_230119053_2.jpg",
"http://img3.3lian.com/2013/s1/20/d/57.jpg",
"http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg",
"http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg"};
private PullToRefreshListView pt1;
private Banner ban;
int i=1;
private ImageLoader instance;
private Madapter adapter;
String[] url={"http://pic8.nipic.com/20100701/5290458_114840036316_2.jpg",
"http://pic2.nipic.com/20090424/1468853_230119053_2.jpg",
"http://img3.3lian.com/2013/s1/20/d/57.jpg",
"http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg",
"http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg"};
private PullToRefreshListView pt1;
private Banner ban;
int i=1;
private ImageLoader instance;
private Madapter adapter;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//获取布局
View inflate1 = inflater.inflate(R.layout.pullto1, container, false);
View view1 = View.inflate(getActivity(), R.layout.bann, null);
instance = ImageLoader.getInstance();
//获取控件
pt1 = (PullToRefreshListView) inflate1.findViewById(R.id.pt1);
ban = (Banner)view1.findViewById(R.id.ban);
ListView lis = pt1.getRefreshableView();
lis.addHeaderView(view1);
ban.setImageLoader(new load());
ban.setImages(Arrays.asList(url));
ban.start();
lini(1);
adapter = new Madapter();
pt1.setAdapter(adapter);
pt1.setMode(PullToRefreshBase.Mode.BOTH);
pt1.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
li.clear();
lini(1);
}
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//获取布局
View inflate1 = inflater.inflate(R.layout.pullto1, container, false);
View view1 = View.inflate(getActivity(), R.layout.bann, null);
instance = ImageLoader.getInstance();
//获取控件
pt1 = (PullToRefreshListView) inflate1.findViewById(R.id.pt1);
ban = (Banner)view1.findViewById(R.id.ban);
ListView lis = pt1.getRefreshableView();
lis.addHeaderView(view1);
ban.setImageLoader(new load());
ban.setImages(Arrays.asList(url));
ban.start();
lini(1);
adapter = new Madapter();
pt1.setAdapter(adapter);
pt1.setMode(PullToRefreshBase.Mode.BOTH);
pt1.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
li.clear();
lini(1);
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
lini(i++);
}
});
return inflate1;
}
public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
lini(i++);
}
});
return inflate1;
}
private void lini(int i) {
new Masync().execute("http://api.expoon.com/AppNews/getNewsList/type/1/p/"+i);
}
new Masync().execute("http://api.expoon.com/AppNews/getNewsList/type/1/p/"+i);
}
class load extends com.youth.banner.loader.ImageLoader{
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
com.nostra13.universalimageloader.core.ImageLoader.getInstance().displayImage((String) path,imageView,getDisplayImageOption());
}
}
public void displayImage(Context context, Object path, ImageView imageView) {
com.nostra13.universalimageloader.core.ImageLoader.getInstance().displayImage((String) path,imageView,getDisplayImageOption());
}
}
private class Masync extends AsyncTask<String,Void,String>{
@Override
protected String doInBackground(String... strings) {
return Netutil.wen(strings[0]);
}
@Override
protected String doInBackground(String... strings) {
return Netutil.wen(strings[0]);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson g=new Gson();
Bean bean = g.fromJson(s, Bean.class);
List<Bean.DataBean> data = bean.getData();
li.addAll(data);
adapter.notifyDataSetChanged();
pt1.onRefreshComplete();
}
}
class Madapter extends BaseAdapter{
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson g=new Gson();
Bean bean = g.fromJson(s, Bean.class);
List<Bean.DataBean> data = bean.getData();
li.addAll(data);
adapter.notifyDataSetChanged();
pt1.onRefreshComplete();
}
}
class Madapter extends BaseAdapter{
private Frg11.holder holder;
@Override
public int getCount() {
return li.size();
}
public int getCount() {
return li.size();
}
@Override
public Object getItem(int i) {
return li.get(i);
}
public Object getItem(int i) {
return li.get(i);
}
@Override
public long getItemId(int i) {
return i;
}
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
if (view==null){
holder = new holder();
view=View.inflate(getActivity(),R.layout.item,null);
holder.iv = view.findViewById(R.id.iv);
holder.tv = view.findViewById(R.id.tv);
view.setTag(holder);
}else {
holder=(holder)view.getTag();
}
instance.displayImage(li.get(i).getPic_url(), holder.iv,getDisplayImageOption());
holder.tv.setText(li.get(i).getNews_title());
return view;
}
}
class holder{
ImageView iv;
TextView tv;
}
public static DisplayImageOptions getDisplayImageOption() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
public View getView(int i, View view, ViewGroup viewGroup) {
if (view==null){
holder = new holder();
view=View.inflate(getActivity(),R.layout.item,null);
holder.iv = view.findViewById(R.id.iv);
holder.tv = view.findViewById(R.id.tv);
view.setTag(holder);
}else {
holder=(holder)view.getTag();
}
instance.displayImage(li.get(i).getPic_url(), holder.iv,getDisplayImageOption());
holder.tv.setText(li.get(i).getNews_title());
return view;
}
}
class holder{
ImageView iv;
TextView tv;
}
public static DisplayImageOptions getDisplayImageOption() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.displayer(new RoundedBitmapDisplayer(20))//是否设置为圆角,弧度为多少
.build();//构建完成
return options;
}
return options;
}
阅读全文
0 0
- PullToRefresh+Banner无限轮播
- Banner无限轮播
- Banner无限轮播
- banner无限轮播
- banner无限轮播
- Banner无限轮播
- Banner无限轮播
- banner无限轮播
- Banner无限轮播
- Banner无限轮播
- banner 无限轮播
- Banner无限轮播
- Banner无限轮播
- Banner无限轮播
- Banner无限轮播
- Banner无限轮播
- banner无限轮播
- 侧滑+PullToRefresh+无限轮播
- java使用jsp servlet来防止csrf 攻击的实现方法
- 图形用户界面2
- 无约束优化基础--解的条件
- 算法(一) --DP动态规划(LIS和LCS)
- linux Centos6.5 下python2.6升级到2.7
- PullToRefresh+Banner无限轮播
- Java多线程--非公平锁
- C#个人重构之单例模式
- Linux用户权限分析、时间戳、管道文件、以及一些重要命令的解释
- Android Studio,gradle project refresh failed,Cannot start internal HTTP server. (171119
- ActiveMQ发送消息,接受消息。点对点连接
- Centos7下配置DNS
- MarkDown 的基本语法和快捷键,20分钟快速学会
- hdu 3763 CD(二分查找)