你的位置:首页 > 操作系统

[操作系统]谷歌电子市场3

 

public class AppFragment extends BaseFragment {  ArrayList<AppInfo> mList = null;  @Override  public View onCreateSuccessView() {    MyListView view = new MyListView(UIUtils.getContext());    view.setAdapter(new AppAdapter(mList));    return view;  }  @Override  public ResultState onLoad() {    AppProtocol protocol = new AppProtocol();    mList = protocol.getData(0);    return check(mList);  }  class AppAdapter extends MyBaseAdapter<AppInfo> {    public AppAdapter(ArrayList<AppInfo> list) {      super(list);    }    @Override    public BaseHolder<AppInfo> getHolder(int position) {      return new AppHolder();    }    @Override    public ArrayList<AppInfo> onLoadMore() {      AppProtocol protocol = new AppProtocol();      ArrayList<AppInfo> moreData = protocol.getData(getListSize());      return moreData;    }  }}--------------------------------------/** * 应用页访问网络 * * @author Kevin * */public class AppProtocol extends BaseProtocol<ArrayList<AppInfo>> {  private ArrayList<AppInfo> mAppList;// 应用列表集合  @Override  public String getKey() {    return "app";  }  @Override  public String getParams() {    return "";  }  @Override  public ArrayList<AppInfo> parseJson(String result) {    try {      JSONArray ja = new JSONArray(result);      mAppList = new ArrayList<AppInfo>();      for (int i = 0; i < ja.length(); i++) {        AppInfo info = new AppInfo();        JSONObject jo1 = (JSONObject) ja.get(i);        info.des = jo1.getString("des");        info.downloadUrl = jo1.getString("downloadUrl");        info.iconUrl = jo1.getString("iconUrl");        info.id = jo1.getString("id");        info.name = jo1.getString("name");        info.packageName = jo1.getString("packageName");        info.size = jo1.getLong("size");        info.stars = jo1.getDouble("stars");        mAppList.add(info);      }      return mAppList;    } catch (Exception e) {      e.printStackTrace();    }    return null;  }}-----------------------------------/** * 应用页holder * * @author Kevin * */public class AppHolder extends BaseHolder<AppInfo> {  private TextView tvName;  private ImageView ivIcon;  private TextView tvSize;  private TextView tvDesc;  private RatingBar rbStar;  private BitmapUtils mBitmapUtils;  @Override  public View initView() {    View view = View.inflate(UIUtils.getContext(), R.layout.list_item_home,        null);    tvName = (TextView) view.findViewById(R.id.tv_name);    ivIcon = (ImageView) view.findViewById(R.id.iv_icon);    tvSize = (TextView) view.findViewById(R.id.tv_size);    tvDesc = (TextView) view.findViewById(R.id.tv_desc);    rbStar = (RatingBar) view.findViewById(R.id.rb_star);    mBitmapUtils = BitmapHelper.getBitmapUtils();    mBitmapUtils.configDefaultLoadingImage(R.drawable.ic_default);    return view;  }  @Override  public void refreshView(AppInfo data) {    if (data != null) {      tvName.setText(data.name);      tvSize.setText(Formatter.formatFileSize(UIUtils.getContext(),          data.size));      tvDesc.setText(data.des);      rbStar.setRating((float) data.stars);      mBitmapUtils.display(ivIcon, HttpHelper.URL + "image?name="          + data.iconUrl);    }  }}