a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 系統 > Android > 正文

PullToRefreshListView實現多條目加載上拉刷新和下拉加載

2019-10-21 21:26:12
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Android九宮格圖片展示的具體代碼,供大家參考,具體內容如下

XML布局

主頁面main布局

<com.handmark.pulltorefresh.library.PullToRefreshListView  android:layout_width="match_parent"  android:layout_height="match_parent"  android:id="@+id/pull"  ></com.handmark.pulltorefresh.library.PullToRefreshListView>

pulllist布局

<ImageView  android:layout_width="120dp"  android:layout_height="100dp"  android:id="@+id/iv"  /><TextView  android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/tv"  />

java代碼

App頁面

package com.example.duanpengpenglx20171108;import android.app.Application;import com.nostra13.universalimageloader.cache.memory.impl.UsingFreqLimitedMemoryCache;import com.nostra13.universalimageloader.core.DisplayImageOptions;import com.nostra13.universalimageloader.core.ImageLoader;import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;import com.nostra13.universalimageloader.core.assist.QueueProcessingType;import com.nostra13.universalimageloader.core.download.BaseImageDownloader;/** * Created by 朋 on 2017/11/8. */public class App extends Application {  @Override  public void onCreate() {    super.onCreate();    ImageLoaderConfiguration config = new ImageLoaderConfiguration        .Builder(this)        .memoryCacheExtraOptions(480,800)        .threadPoolSize(5)        .threadPriority(Thread.NORM_PRIORITY - 2)        .denyCacheImageMultipleSizesInMemory()        .memoryCache(new UsingFreqLimitedMemoryCache(2 * 1024 * 1024)) // You can pass your own memory cache implementation/你可以通過自己的內存緩存實現        .memoryCacheSize(2 * 1024 * 1024)        .tasksProcessingOrder(QueueProcessingType.LIFO)        .defaultDisplayImageOptions(DisplayImageOptions.createSimple())        .imageDownloader(new BaseImageDownloader(this, 5 * 1000, 30 * 1000)) // connectTimeout (5 s), readTimeout (30 s)超時時間        .writeDebugLogs() // Remove for release app        .build();//開始構建//初始化imageloader;    ImageLoader.getInstance().init(config);  }}

MainActivity頁面

public class MainActivity extends AppCompatActivity {  List<Jbean.DataBean> arr = new ArrayList();  private View view;  private ListView lv;  private Adapter adapter;  int i = 0;  private PullToRefreshListView pull;  private Adapter adapter1;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    pull = (PullToRefreshListView) findViewById(R.id.pull);    pull.setMode(PullToRefreshBase.Mode.BOTH);    ListView lv = pull.getRefreshableView();    adapter1 = new Adapter();    lv.setAdapter(adapter1);    new MyAsyncTask().execute("http://www.93.gov.cn/93app/data.do?channelId=0&startNum=0");    pull.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {      @Override      //上拉      public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {        arr.clear();        i = 0;        new MyAsyncTask().execute("http://www.93.gov.cn/93app/data.do?channelId=0&startNum=" + i);      }      @Override      //下拉加載20條      public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {        i = i + 20;new MyAsyncTask().execute("http://www.93.gov.cn/93app/data.do?channelId=0&startNum=" + i);      }    });  }  class MyAsyncTask extends AsyncTask<String, Void, String> {    @Override    protected String doInBackground(String... params) {      String string = "";      StringBuffer stringBuffer = new StringBuffer();      try {        URL url = new URL(params[0]);        URLConnection urlConnection = url.openConnection();        InputStream inputStream = urlConnection.getInputStream();        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));        while ((string = bufferedReader.readLine()) != null) {          stringBuffer.append(string);        }      } catch (Exception e) {        e.printStackTrace();      }      return stringBuffer.toString();    }    @Override    protected void onPostExecute(String s) {      super.onPostExecute(s);      Jbean fragone_bean = new Gson().fromJson(s, Jbean.class);      List<Jbean.DataBean> data = fragone_bean.getData();      arr.addAll(data);      adapter1.notifyDataSetChanged();      pull.onRefreshComplete();    }  }  class Adapter extends BaseAdapter {    @Override    public int getCount() {      return arr.size();    }    @Override    public Object getItem(int position) {      return arr.get(position);    }    @Override    public long getItemId(int position) {      return position;    }    @Override    public View getView(int position, View convertView, ViewGroup parent) {      Sj sj = new Sj();      Jbean.DataBean dataBean = arr.get(position);      if (convertView==null){        convertView = View.inflate(MainActivity.this,R.layout.pulllist,null);        sj.image=convertView.findViewById(R.id.iv);        sj.tv=convertView.findViewById(R.id.tv);        convertView.setTag(sj);      }else {        sj =(Sj) convertView.getTag();      }      sj.tv.setText(dataBean.getSUBTITLE());      DisplayImageOptions options = new DisplayImageOptions.Builder()          .cacheInMemory(true)          .cacheOnDisk(true)          .showImageOnLoading(R.drawable.zhengzaijiazai)          .showImageForEmptyUri(R.drawable.zhengzaijiazai)          .showImageOnFail(R.drawable.zhengzaijiazai)          .bitmapConfig(Bitmap.Config.RGB_565)          .build();      ImageLoader.getInstance().displayImage((String) dataBean.getIMAGEURL(),sj.image,options);      return convertView;    }  }  class Sj{    ImageView image;    TextView tv;  }  }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产情侣免费视频 | 免费黄色污网站 | 在线亚洲精品 | 四虎黄色影院 | 偷拍做爰吃奶视频免费看 | 亚洲欧美日韩天堂 | 久久综合色视频 | 污网站在线观看免费 | 久久99久久久久 | 日韩a电影 | 四虎成人在线 | 国产一区二区三区在线视频 | 一区在线看 | 久久久久久久久久网站 | 日韩一区二区三区在线 | 久久久日韩精品一区二区三区 | 欧美一级片在线观看 | 久久久久久久国产精品 | 国产精品视频区 | 久久噜噜噜精品国产亚洲综合 | 亚洲综合精品视频 | 国产在线一 | 黄色在线观看 | 日韩极品在线 | 中文字幕一区二区三区日韩精品 | 黄色片在线免费观看 | 久久噜 | a久久免费视频 | 久久综合激情 | 91精品久久久久久久久久 | 天堂视频中文字幕 | 国产欧美日本 | 欧美日韩免费看 | 午夜免费观看视频 | 国产精品久久久久久久久久久久久久 | 国内精品国产成人国产三级粉色 | 欧洲精品乱码久久久久蜜桃 | 久久久久综合网 | 狠狠天天 | 秋霞在线一区 | 色婷婷综合在线视频 |