list的显示和响应事件

来源:互联网 发布:企业开淘宝网店交税 编辑:程序博客网 时间:2024/05/22 04:52
package com.qian.tourism.activity;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern;import org.eclipse.jdt.annotation.Nullable;import android.content.Intent;import android.os.Bundle;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.Button;import android.widget.ImageView;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.SimpleAdapter.ViewBinder;import com.alibaba.fastjson.JSON;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 com.qian.tourism.Entity.Scenicentity;import com.qian.tourism.Entity.Scenicentity1;public class Tab1Fragment extends Fragment {private String cityId;private String URL = "http://apis.haoservice.com/lifeservice/travel/scenery?pid=";private String URL1 = "&page=1&key=313ece3735574549ba61f3de6a290f8a";private String URL2;private String provinceId;BitmapUtils bitmapUtils;ListView list;@Overridepublic View onCreateView(LayoutInflater inflater,@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {bitmapUtils = new BitmapUtils(getActivity());View view = inflater.inflate(R.layout.liebiao, null);// Bundle bundle = getArguments();cityId = "&cid=" + getActivity().getIntent().getStringExtra("cityId");provinceId = getActivity().getIntent().getStringExtra("provinceId");// URL2 = String.format(URL, cityId);URL2 = URL + provinceId + cityId + URL1;// 绑定XML中的ListView,作为Item的容器list = (ListView) view.findViewById(R.id.jindian);po();return view;}private void po() {HttpUtils http = new HttpUtils();http.send(HttpMethod.GET, URL2, new RequestCallBack<String>() {@Overridepublic void onFailure(HttpException arg0, String arg1) {System.out.println("网络错误");}@Overridepublic void onSuccess(ResponseInfo<String> arg0) {// 解析Scenicentity1 parseObject = JSON.parseObject(arg0.result,Scenicentity1.class);final List<Scenicentity> result = parseObject.getResult();int size = result.size();// 生成动态数组,并且转载数据ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();for (int i = 0; i < size; i++) {HashMap<String, String> map = new HashMap<String, String>();map.put("Imgurl", result.get(i).getImgurl());map.put("Title", result.get(i).getTitle());map.put("Grade", result.get(i).getGrade());map.put("Price_min", result.get(i).getPrice_min());map.put("Address", result.get(i).getAddress());mylist.add(map);}// 生成适配器,数组===》ListItemSimpleAdapter mSchedule = new SimpleAdapter(getActivity(), // 没什么解释mylist,// 数据来源R.layout.hotel,// ListItem的XML实现// 动态数组与ListItem对应的子项new String[] { "Imgurl", "Title", "Grade", "Price_min","Address" },// ListItem的XML文件里面的两个TextView IDnew int[] { R.id.jingdian, R.id.name, R.id.xingji,R.id.qian, R.id.dizhi }){@Overridepublic View getView(final int position,View convertView, ViewGroup parent) {View view = super.getView(position, convertView, parent);Button btn = (Button) view.findViewById(R.id.btn1);btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {Intent it=new Intent(getActivity(), SpotsActivity.class);Bundle bundle = new Bundle();bundle.putString("sid", result.get(position).getSid());it.putExtras(bundle);startActivity(it);//System.out.println("position:"+result.get(position).getSid());}});return view;}};// 添加并且显示list.setAdapter(mSchedule);mSchedule.setViewBinder(new ViewBinder() {@Overridepublic boolean setViewValue(View view, Object data,String arg2) {if (view instanceof ImageView && data instanceof String) {String regex = "^(http|https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]";Pattern patt = Pattern.compile(regex);Matcher matcher = patt.matcher((String) data);boolean isMatch = matcher.matches();if (isMatch) {bitmapUtils.display((ImageView) view,(String) data);}return true;} else {return false;}}});}});}}



本文章中的URL已过期,提示网络错误。

0 0
原创粉丝点击