日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android 之图文混排+GridView

發布時間:2025/4/5 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 之图文混排+GridView 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.




實例代碼:

package com.hsj.example.gridviewdemo01;import android.app.ProgressDialog; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.AsyncTask; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.AbsListView; import android.widget.ImageView; import android.widget.ListView; import android.widget.SimpleAdapter;import com.hsj.example.gridviewdemo01.com.hsj.utils.NetUtils;import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.util.ArrayList; import java.util.List; import java.util.Map;public class MainActivity extends AppCompatActivity {private ListView listView_movies;private String path;private ProgressDialog progressDialog;private List<Map<String,Object>> data=new ArrayList<>();private SimpleAdapter adapter;private int pageNo=1;private int pageSize=20;/*** 是否滾到頁面底部*/private boolean isBottom;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);this.listView_movies= (ListView) this.findViewById(R.id.listView_movies);this.progressDialog=new ProgressDialog(this);this.progressDialog.setMessage("正在加載數據,請稍等.....");this.progressDialog.setCancelable(false);this.listView_movies.setOnScrollListener(new AbsListView.OnScrollListener() {@Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) {if(isBottom && scrollState== AbsListView.OnScrollListener.SCROLL_STATE_IDLE){pageNo++;try {path = "https://movie.douban.com/j/search_subjects?type=movie&tag="+ URLEncoder.encode("熱門","utf-8")+"&sort=recommend&page_limit="+pageSize+"&page_start="+(pageNo-1)*pageSize;new LoadNetDataAsyncTask().execute(path);} catch (UnsupportedEncodingException e) {e.printStackTrace();}}}@Overridepublic void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {isBottom=firstVisibleItem+visibleItemCount==totalItemCount;}});try {path = "https://movie.douban.com/j/search_subjects?type=movie&tag="+ URLEncoder.encode("熱門","utf-8")+"&sort=recommend&page_limit=20&page_start=0";new LoadNetDataAsyncTask().execute(path);} catch (UnsupportedEncodingException e) {e.printStackTrace();}}/*** 加載網絡數據的*/private final class LoadNetDataAsyncTask extends AsyncTask<String,Void,List<Map<String,Object>>>{@Overrideprotected void onPreExecute() {progressDialog.show();}@Overrideprotected List<Map<String, Object>> doInBackground(String... params) {try {InputStream inputStream= NetUtils.getInputStreamByPath(params[0]);if(inputStream!=null){String json=NetUtils.getJsonByInputStream(inputStream);if(json!=null){return NetUtils.getListMaps(json);}}} catch (Exception e) {e.printStackTrace();}return null;}@Overrideprotected void onPostExecute(List<Map<String, Object>> maps) {if(maps.size()>0){data.addAll(maps);if(adapter==null){adapter=new SimpleAdapter(MainActivity.this,data,R.layout.movie_item,new String[]{"title","cover"},new int[]{R.id.textView_title,R.id.imageView_cover});/*給用戶一次機會:手工將指定數據綁定到指定控件上的機會*/adapter.setViewBinder(new SimpleAdapter.ViewBinder() {/*** 當給控件賦值時自動調用的方法* @param view 需要綁定數據的視圖對象* @param data 需要給視圖設置的數據* @param textRepresentation 需要給視圖設置的數據* @return 如果使用setViewValue()方法完成數據綁定則返回true,否則使用默認的數據綁定則返回false*/@Overridepublic boolean setViewValue(View view, Object data, final String textRepresentation) {if(view instanceof ImageView){final ImageView imageView_cover= (ImageView) view;class LoadImageSyncTask extends AsyncTask<String,Void,Bitmap>{@Overrideprotected Bitmap doInBackground(String... params) {try {InputStream inputStream=NetUtils.getInputStreamByPath(textRepresentation);if(inputStream!=null){return BitmapFactory.decodeStream(inputStream);}} catch (Exception e) {e.printStackTrace();}return null;}@Overrideprotected void onPostExecute(Bitmap bitmap) {if(bitmap!=null){imageView_cover.setImageBitmap(bitmap);}}}new LoadImageSyncTask().execute(textRepresentation);return true;}System.out.println("====setViewValue(View view="+view+", Object data="+data+", String textRepresentation="+textRepresentation+")====");return false;}});listView_movies.setAdapter(adapter);}else{adapter.notifyDataSetChanged();}}progressDialog.dismiss();}} }

總結

以上是生活随笔為你收集整理的android 之图文混排+GridView的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲综合久久久 | 国产成人精品一区二区在线小狼 | 欧美熟妇精品久久久久久 | 久久久久久国产精品三级玉女聊斋 | 午夜淫片 | 大奶子在线观看 | 91看片在线观看 | 美女毛片视频 | 欧美h视频在线观看 | 能免费看18视频网站 | 一本一道人人妻人人妻αv 九一在线视频 | 人妻一区二区三区四区五区 | 麻豆免费观看网站 | 亚洲v国产v欧美v久久久久久 | 操极品少妇 | 人人爽人人爽人人片 | 精品黑人一区二区三区在线观看 | 东京热av一区 | 日本人妻不卡一区二区三区中文字幕 | 在线少妇 | 伊人网大香 | 麻豆精品自拍 | 手机av在线网 | 色无极在线| 亚洲一卡二卡三卡 | 久久久久久免费毛片精品 | 超能一家人电影免费喜剧在线观看 | 国产女大学生av | 麻豆视频官网 | 亚洲欧美另类日本 | 美女靠逼app| 亚洲视频成人 | 日中文字幕 | 国产美女精品一区二区三区 | 国产在线一区不卡 | 九九热视频在线 | 国产性生活 | 乳孔很大能进去的av番号 | 可以免费看毛片的网站 | 麻豆精品国产传媒av | 亚洲精品美女在线观看 | 91一区视频| 亚洲免费在线视频 | 精品国产乱码一区二区三区99 | 国产精品资源在线观看 | 久久久久婷婷 | jizz成熟丰满老女人 | 欧美成人精品一区二区三区在线看 | 亚洲精品美女网站 | 一级黄色影院 | 日本一区二区免费看 | 黄色片在线免费观看视频 | 亚洲色偷精品一区二区三区 | 图片区 小说区 区 亚洲五月 | 神马久久久久久久久 | 日韩逼 | 精品伦精品一区二区三区视频密桃 | 蜜桃av久久久亚洲精品 | 少妇福利视频 | 欧美日韩色片 | 艳母日本动漫在线观看 | 人人搞人人 | av片在线观看 | 少妇无码一区二区三区免费 | 免费在线观看一区二区 | 国产精品无码成人网站视频 | 蜜桃视频无码区在线观看 | 在线看国产 | 国产一区,二区 | 九九热精品在线视频 | 自拍视频网址 | 国产理论片 | 91久久国产精品 | 日韩深夜福利 | 3d动漫精品啪啪一区二区下载 | 日本三级韩国三级三级a级中文 | 亲嘴脱内衣内裤 | 99er在线观看 | 亚洲欧美一区二区三区不卡 | 国产调教打屁股xxxx网站 | 亚洲精品二区 | 国产精品电影一区二区三区 | 国产99久久九九精品无码免费 | 99国产精品久久久久99打野战 | 四虎国产精品永久免费观看视频 | 野花国产精品入口 | av午夜精品 | 91小仙女jk白丝袜呻吟 | 欧美老熟妇一区二区三区 | 牛牛澡牛牛爽一区二区 | 黄网视频在线观看 | 亚洲欧美日韩电影 | 免费久久一级欧美特大黄 | 国产精选91 | 蜜臀久久| 国产一区二区视频在线观看 | 亚洲综合插 | 高h奶汁双性受1v1 | 麻豆传媒网站入口 |