组图模块
来源:互联网 发布:网络播放器安装电视猫 编辑:程序博客网 时间:2024/06/10 10:49
使用ListView与GridView切换:
实现效果:
整体XML布局:
<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp" android:orientation="vertical" > <ListView android:id="@+id/lv_menu_groupphoto_listView" android:layout_width="match_parent" android:layout_height="match_parent" android:divider="@null" android:textAlignment="1" /> <GridView android:id="@+id/gv_menu_groupphoto_gridview" android:layout_width="match_parent" android:layout_height="match_parent" android:numColumns="2" ></GridView> </FrameLayout>
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ImageView android:id="@+id/iv_list_groupphoto_ImageView" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="5" android:src="@drawable/ic_launcher" /> <TextView android:id="@+id/tv_list_groupphoto_TextView" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:text="this is a textview" android:gravity="center" android:textSize="22sp" /> </LinearLayout></LinearLayout>
实现代码:
可分为 绘图, 从网络获取数据,以及数据解析,太简单,无力写注释。。。。
package com.example.zhihuibj.BaseMenuDetailPager;import java.lang.reflect.Type;import java.util.ArrayList;import com.example.zhihuibj.R;import com.example.zhihuibj.domain.PhotoData;import com.example.zhihuibj.domain.PhotoData.PhotoInfo;import com.example.zhihuibj.global.GlobalContants;import com.google.gson.Gson;import com.lidroid.xutils.BitmapUtils;import com.lidroid.xutils.HttpUtils;import com.lidroid.xutils.exception.HttpException;import com.lidroid.xutils.http.ResponseInfo;import com.lidroid.xutils.http.callback.RequestCallBack;import com.lidroid.xutils.http.client.HttpRequest.HttpMethod;import android.app.Activity;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.GridView;import android.widget.ImageView;import android.widget.ListView;import android.widget.TextView;import android.widget.Toast;/* * 菜单详情页-组图 */public class PhotoMenuDetailPager extends BaseMenuDetailPager{private ListView mListView;private GridView mGridView;private ArrayList<PhotoInfo> mphotolist;private PhotoAdapter mAdapter;public PhotoMenuDetailPager(Activity mActivity) {super(mActivity);// TODO Auto-generated constructor stub}@Overridepublic View initView() {View mView=View.inflate(mActivity, R.layout.menu_groupphoto, null);mListView=(ListView) mView.findViewById(R.id.lv_menu_groupphoto_listView);mGridView=(GridView) mView.findViewById(R.id.gv_menu_groupphoto_gridview);return mView;}@Overridepublic void initData() {PhotoMenuGetDataFromService();}/* * 获取网路数据 * url还不确定 */private void PhotoMenuGetDataFromService() {HttpUtils mUtils= new HttpUtils(); mUtils.send(HttpMethod.GET, GlobalContants.PHOTOS_URL, new RequestCallBack<String>(){@Overridepublic void onSuccess(ResponseInfo<String> responseInfo) {String result =(String) responseInfo.result;parseData(result);}@Overridepublic void onFailure(HttpException error, String msg) {Toast.makeText(mActivity, msg, Toast.LENGTH_SHORT).show();error.printStackTrace();System.out.println("TabDetailPager : 解析错误!!!");}});}/* * 解析数据 * */public void parseData(String result){Gson gson = new Gson(); PhotoData data = gson.fromJson(result, PhotoData.class); mphotolist=data.data.news; if(mphotolist!=null) { mAdapter= new PhotoAdapter(); mGridView.setAdapter(new PhotoAdapter()); } }public class ViewHoder{public TextView vh_mTextView;public ImageView vh_mImageView;}public class PhotoAdapter extends BaseAdapter{private ViewHoder mViewHoder;private BitmapUtils mbitmaputils;public PhotoAdapter(){ mbitmaputils = new BitmapUtils(mActivity);// mbitmaputils.configDefaultLoadingImage(R.drawable.ic_launcher);}@Overridepublic int getCount() {// TODO Auto-generated method stubreturn mphotolist.size();}@Overridepublic PhotoInfo getItem(int position) {// TODO Auto-generated method stubreturn mphotolist.get(position);}@Overridepublic long getItemId(int position) {// TODO Auto-generated method stubreturn position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {/* * 绘图 */if(convertView==null){convertView = View.inflate(mActivity, R.layout.list_groupphoto, null);mViewHoder=new ViewHoder();mViewHoder.vh_mTextView=(TextView) convertView.findViewById(R.id.tv_list_groupphoto_TextView);mViewHoder.vh_mImageView=(ImageView) convertView.findViewById(R.id.iv_list_groupphoto_ImageView);convertView.setTag(mViewHoder);}else{mViewHoder=(ViewHoder) convertView.getTag();}/* * 放数据 */PhotoInfo item=getItem(position);mViewHoder.vh_mTextView.setText(item.title);mbitmaputils.display(mViewHoder.vh_mImageView, item.listimage.replace("10.0.2.2", "192.168.56.1"));return convertView;}}}
0 0
- 组图模块
- ansible服务模块和组模块使用
- 程序模块架构图
- hostapd 模块图
- epcs1模块接线图
- Unity学习模块图
- kurento模块架构图
- SDRAM控制模块图
- 模块
- 模块
- 模块
- 模块
- 模块
- 模块
- 模块
- 模块
- 模块
- 模块
- Egret)引擎工作原理
- 每天学点Python之collections
- UIScrollView,UIPageControl,UIImageView 实现图片轮播的效果
- BP算法浅谈(Error Back-propagation)
- LINUX 命令行变成-bash-4.2$
- 组图模块
- java各种时间格式转换
- ICAP协议简介
- 【c/c++】构造函数的默认参数以及缺省参数值
- Python2.6.6安装PyInstaller
- Instant Client和Oracle Client有什么区别
- 解析复杂的json数据
- javascript对象的创建方式,原型,方法
- CSS基础之选择器