文档章节

Adapter

 易水寒521
发布于 2015/06/10 15:59
字数 750
阅读 10
收藏 0

CheckoutDetailAdapter

 package cn.thewee.gourmetmeal.staff.adapter;
import java.util.ArrayList;
import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import cn.thewee.gourmetmeal.staff.R;
import cn.thewee.gourmetmeal.staff.bean.Dish;
public class CheckoutDetailAdapter extends BaseAdapter {
 private static final String TAG = "CheckoutDetailAdapter";
 Context context;
 ArrayList<Dish> dishList = new ArrayList<Dish>();
 LayoutInflater mInflater;
 
 private class ViewHolder{
  TextView tv_index4checkout;
  TextView tv_dishName4checkout;
  TextView tv_unitPrice4checkout;
  TextView tv_count4checkout;
  TextView tv_totalPrice4checkout;
  TextView tv_dishClass4checkout;
 }
 
 public CheckoutDetailAdapter(Context context) {
  super();
  this.context = context;
  mInflater = LayoutInflater.from(context);
 }
 
 public ArrayList<Dish> getDishList() {
  return dishList;
 }
 public void setDishList(ArrayList<Dish> dishList) {
  if(dishList!=null){
   for(Dish d : dishList){
//    Log.i(TAG+".setDishList", d.toString());
    System.out.println("dishList1 "+d);
   }
   this.dishList.clear();
   this.dishList.addAll(dishList);
  }
 }
 @Override
 public int getCount() {
  return dishList.size();
 }
 @Override
 public Dish getItem(int position) {
  return dishList.get(position);
 }
 @Override
 public long getItemId(int position) {
  return Long.valueOf(dishList.get(position).getDish_id());
 }
 @Override
 public View getView(int position, View convertView, ViewGroup parent) {
  // TODO Auto-generated method stub
  ViewHolder holder = null;
  if(convertView == null){
   holder = new ViewHolder();
   convertView = mInflater.inflate(R.layout.detail_checkout_item, null);
   
   holder.tv_count4checkout = (TextView) convertView.findViewById(R.id.tv_count4checkout);
   holder.tv_dishClass4checkout = (TextView) convertView.findViewById(R.id.tv_dishClass4checkout);
   holder.tv_dishName4checkout = (TextView) convertView.findViewById(R.id.tv_dishName4checkout);
   holder.tv_index4checkout = (TextView) convertView.findViewById(R.id.tv_index4checkout);
   holder.tv_totalPrice4checkout = (TextView) convertView.findViewById(R.id.tv_totalPrice4checkout);
   holder.tv_unitPrice4checkout = (TextView) convertView.findViewById(R.id.tv_unitPrice4checkout);
   
   convertView.setTag(holder);
  }else{
   holder = (ViewHolder) convertView.getTag();
  }
  holder.tv_count4checkout.setText(String.valueOf(getItem(position).getCount()));
  holder.tv_dishClass4checkout.setText(getItem(position).getDish_class());
  holder.tv_dishName4checkout.setText(getItem(position).getDish_name());
  holder.tv_index4checkout.setText(String.valueOf(position+1));
  holder.tv_totalPrice4checkout.setText(String.valueOf(getItem(position).getTotalPrice()));
  holder.tv_unitPrice4checkout.setText(String.valueOf(getItem(position).getPrice()));
  
  return convertView;
 }
}

CheckoutAdapter

 package cn.thewee.gourmetmeal.staff.adapter;
import java.util.ArrayList;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.BaseAdapter;
import android.widget.RadioButton;
import android.widget.TextView;
import cn.thewee.gourmetmeal.staff.OrderListActivity;
import cn.thewee.gourmetmeal.staff.R;
public class CheckoutAdapter extends BaseAdapter {
 OrderListActivity activity;
 LayoutInflater mInflater;
 
 ArrayList<String> uncheckedOrder = new ArrayList<String>();
 String selectedOrderId = null;
 
 int checkedPosition = -1;//标记当前选中项
 
 private class ViewHolder{
  TextView tv_orderId4checkout;
  RadioButton radio_chosen4checkout;
 }
 
 public CheckoutAdapter(OrderListActivity activity) {
  super();
  this.activity = activity;
  mInflater = LayoutInflater.from(activity);
 }
 public ArrayList<String> getUncheckedOrder() {
  return uncheckedOrder;
 }
 public void setUncheckedOrder(ArrayList<String> uncheckedOrder) {
  if(uncheckedOrder != null){
   this.uncheckedOrder.clear();
   this.uncheckedOrder.addAll(uncheckedOrder);
  }
 }
 public String getSelectedOrderId() {
  return selectedOrderId;
 }
 
 
 @Override
 public int getCount() {
  // TODO Auto-generated method stub
  return uncheckedOrder.size();
 }
 @Override
 public String getItem(int position) {
  // TODO Auto-generated method stub
  return uncheckedOrder.get(position);
 }
 @Override
 public long getItemId(int position) {
  // TODO Auto-generated method stub
  return position;
 }
 @Override
 public View getView(final int position, View convertView, ViewGroup parent) {
  ViewHolder holder = null;
  if(convertView == null){
   holder = new ViewHolder();
   convertView = mInflater.inflate(R.layout.checkout_item, null);
   holder.radio_chosen4checkout = (RadioButton) convertView.findViewById(R.id.radio_chosen4checkout);
   holder.tv_orderId4checkout = (TextView) convertView.findViewById(R.id.tv_orderId4checkout);
   convertView.setTag(holder);
  }else{
   holder = (ViewHolder) convertView.getTag();
  }
  holder.tv_orderId4checkout.setText(uncheckedOrder.get(position));
  holder.radio_chosen4checkout.setId(position);
  if(position == checkedPosition){
   holder.radio_chosen4checkout.setChecked(true);
  }else{
   holder.radio_chosen4checkout.setChecked(false);
  }
  holder.radio_chosen4checkout.setOnClickListener(new OnClickListener(){
   @Override
   public void onClick(View v) {
    selectedOrderId = getItem(position);
    if(checkedPosition != -1 && checkedPosition != position){
     RadioButton tempButton = (RadioButton) activity.findViewById(checkedPosition);
     if(tempButton != null) tempButton.setChecked(false);
    }
    checkedPosition = position;
    activity.setTableNum();
   }
  });
  return convertView;
 }

}

OrderBrowseAdapter

package cn.thewee.gourmetmeal.staff.adapter;
import java.util.ArrayList;
import android.app.AlertDialog;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import cn.thewee.gourmetmeal.staff.R;
import cn.thewee.gourmetmeal.staff.bean.Dish;
public class OrderBrowseAdapter extends BaseAdapter {
 Context context;
 ArrayList<Dish> dishList;
 LayoutInflater mInflater;
 
 private class ViewHolder{
  TextView tv_index4browse;
  TextView tv_dishName4browse;
  TextView tv_unitPrice4browse;
  TextView tv_count4browse;
  TextView tv_totalPrice4browse;
  Button btn_remark4browse;
  TextView tv_dishClass4browse;
 }
 
 public OrderBrowseAdapter(Context context, ArrayList<Dish> dishList) {
  super();
  this.context = context;
  this.dishList = dishList;
  mInflater = LayoutInflater.from(context);
 }
 @Override
 public int getCount() {
  // TODO Auto-generated method stub
  return dishList.size();
 }
 @Override
 public Dish getItem(int position) {
  // TODO Auto-generated method stub
  return dishList.get(position);
 }
 @Override
 public long getItemId(int position) {
  // TODO Auto-generated method stub
  return Long.valueOf(dishList.get(position).getDish_id());
 }
 @Override
 public View getView(int position, View convertView, ViewGroup parent) {
  ViewHolder holder = null;
  if(convertView == null){
   holder = new ViewHolder();
   convertView = mInflater.inflate(R.layout.browse_order_item, null);
   holder.btn_remark4browse = (Button) convertView.findViewById(R.id.btn_remark4browse);
   holder.tv_count4browse = (TextView) convertView.findViewById(R.id.tv_count4browse);
   holder.tv_dishClass4browse = (TextView) convertView.findViewById(R.id.tv_dishClass4browse);
   holder.tv_dishName4browse = (TextView) convertView.findViewById(R.id.tv_dishName4browse);
   holder.tv_index4browse = (TextView) convertView.findViewById(R.id.tv_index4browse);
   holder.tv_totalPrice4browse = (TextView) convertView.findViewById(R.id.tv_totalPrice4browse);
   holder.tv_unitPrice4browse = (TextView) convertView.findViewById(R.id.tv_unitPrice4browse);
   convertView.setTag(holder);
  }else{
   holder = (ViewHolder) convertView.getTag();
  }
  //填充各个TextView
  setViewsContent(position, holder);
  //设置按钮监听器
  setListener(position, holder);
  return convertView;
 }
 /**
  * 填充各个TextView
  * @param position
  * @param holder
  */
 private void setViewsContent(final int position, ViewHolder holder) {
  //计算总价
  double dish_totalPrice = Double.valueOf(getItem(position).getPrice());
  dish_totalPrice = dish_totalPrice * Double.valueOf(getItem(position).getCount());
  
  holder.tv_count4browse.setText(
    String.valueOf(
      getItem(position)
      .getCount()));
  holder.tv_dishClass4browse.setText(getItem(position).getDish_class());
  holder.tv_dishName4browse.setText(getItem(position).getDish_name());
  holder.tv_index4browse.setText(String.valueOf(position+1));
  holder.tv_totalPrice4browse.setText(String.valueOf(dish_totalPrice));
  holder.tv_unitPrice4browse.setText(String.valueOf(getItem(position).getPrice()));
 }
 /**
  * 设置按钮监听器
  * @param position
  * @param holder
  */
 private void setListener(final int position, ViewHolder holder) {
  //备注
  holder.btn_remark4browse.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
    //创建Dialog构造器
    AlertDialog.Builder dlg_builder = new AlertDialog.Builder(context);
    //设置Dialog标题
    dlg_builder.setTitle(context.getString(R.string.remark));
    //创建TextView
    final TextView tv_remark = new TextView(context);
    //填充TextView
    tv_remark.setText(getItem(position).getRemark());
    //将TextView放入Dialog
    dlg_builder.setView(tv_remark);
    //为Dialog添加按钮
    dlg_builder.setPositiveButton(context.getString(R.string.ok), null);
    //显示Dialog
    dlg_builder.show();
   }
  });
 }
}

© 著作权归作者所有

上一篇: FileDownloader
下一篇: DetailCheckoutActivity
粉丝 0
博文 130
码字总数 120077
作品 0
虹口
私信 提问
适配器模式开发

Adapter模式也叫适配器模式,是构造型模式之一,通过Adapter模式可以改变已有类(或外部类)的接 口形式。 在大规模的系统开发过程中,我们常常碰到诸如以下这些情况:我们需要实现某些功能,...

泡海椒
2015/10/25
105
0
杨慧强/android-adapter

android-adapter android极简adapter,支持list-adapter、expandable-list-adapter以及recycler-adapter,可以非常方便的创建单type以及多type的adapter。 gradle配置方式: 使用方式: 1、创...

杨慧强
2016/10/10
0
0
项目需求讨论-Vlayout来快速构建及扩展复杂界面

大家好,今天又带来了项目中具体遇到的需求。做一个首界面,该首界面有很多功能块,同时这些功能块是动态的,因为登录的人的权限的不同,会显示不同的功能块,因为功能模块的数量不一定,所以...

青蛙要fly
2017/05/27
0
0
zzhoujay/AdvanceAdapter

AdvanceAdapter 可以添加Header和Footer的适配与RecyclerView的Adapter 可以添加多个Header和多个Footer 采用的是包裹原本的Adapter的方式,无需修改原本Adapter 同步子Adapter的数据改变事件...

zzhoujay
2015/07/22
0
0
I2C driver编写常用接口

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010164190/article/details/83745541 1.struct i2c_driver:描述从设备驱动的一个对象 2.struct i2cclient:...

慢慢的燃烧
2018/11/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

ant 中的fileset include等拷贝

拷贝一个目录到指定目录下 例:<copy todir="${basedir}/new"> <fileset dir="${basedir}/old"> <include name="appgen" /> <include name="appgen/" /> <include name=appgen/**" /> <incl......

shzwork
22分钟前
1
0
react-jianshu项目的创建

创建项目 1、github上创建仓库react-jianshu 2、将项目克隆到本地git clone git@github.com:startjcu/react-jianshu.git 3、在当前目录(项目目录的上级目录)下执行create-react-app react-...

星闪海洋
32分钟前
2
0
OSChina 周二乱弹 —— 小哥哥,你可以教我写代码吗

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @nnnm: 生活大爆炸,结束了,这部陪伴了漫长时间的情景喜剧,最终是以诺贝尔奖和大团圆收尾的。虽然,不算精彩,但也是温馨。而少年谢尔顿的...

小小编辑
今天
345
11
typescript 接口 函数类型 可索引类型

函数类型 可索引类型 数字索引签名 字符串索引签名 数字索引签名返回值 必须是 字符串索引签名返回值的子集 只读索引签名

lilugirl
今天
4
0
Oracle SQL语法实例合集

如需转载请注明出处https://my.oschina.net/feistel/blog/3052024 目的:迅速激活Oracle SQL 参考:《Oracle从入门到精通》 ------------------------------------------------------------......

LoSingSang
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部