@Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()) { case R.id.action_editar_detalle_venta: // detalle_seleccionado.setCantidad(5); // this.notifyDataSetChanged(); abrirEditarDetalleVenta(); return true; case R.id.action_eliminar_detalle_venta: double costo_reducido = reg_pedido.nuevoPedido.getCosto_total() - detalle_seleccionado.getCosto(); reg_pedido.nuevoPedido.setCosto_total(costo_reducido); reg_pedido.tvCostoTotal.setText(new StringBuilder().append(costo_reducido).append(" Bs.")); this.remove(detalle_seleccionado); this.notifyDataSetChanged(); return true; } return false; }
@Override public View getView(int position, View convertView, ViewGroup parent) { View view = convertView; final ViewHolder holder; if (convertView == null) { view = activity.getLayoutInflater().inflate(R.layout.modelo_item_detalle_pedido, null); holder = new ViewHolder(); holder.ivImageProd = (ImageView) view.findViewById(R.id.ivImageProdLDetallePedido); holder.tvNombreProd = (TextView) view.findViewById(R.id.tvNombreProdLDetallePedido); holder.tvPrecio = (TextView) view.findViewById(R.id.tvPrecioProdLDetallePedido); holder.tvCant = (TextView) view.findViewById(R.id.tvCantLDetallePedido); holder.tvCostoEntrega = (TextView) view.findViewById(R.id.tvCostoEntregaLDetallePedido); holder.tvCosto = (TextView) view.findViewById(R.id.tvCostoLDetallePedido); view.setTag(holder); } else { holder = (ViewHolder) view.getTag(); } final DetallePedido detalleP = this.getItem(position); Producto prod = getProducto(detalleP.getIdproducto()); if (!prod.getImagen().equals(Variables.SIN_ESPECIFICAR)) { String pathImagen = new StringBuilder(Variables.FOLDER_IMAGES_COOPERATIVA) .append(prod.getImagen()) .toString(); imageLoader = ImageLoader.getInstance(); imageLoader.displayImage( "file://" + pathImagen, holder.ivImageProd, new SimpleImageLoadingListener() { @Override public void onLoadingStarted(String imageUri, View view) { super.onLoadingStarted(imageUri, view); holder.ivImageProd.setImageResource(R.drawable.ic_product_plant_128); } @Override public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) { super.onLoadingComplete(imageUri, view, loadedImage); holder.ivImageProd.setImageBitmap(loadedImage); holder.ivImageProd.setScaleType(ImageView.ScaleType.CENTER_CROP); holder.ivImageProd.setPadding(0, 0, 0, 0); } @Override public void onLoadingFailed(String imageUri, View view, FailReason failReason) { super.onLoadingFailed(imageUri, view, failReason); holder.ivImageProd.setImageResource(R.drawable.ic_product_plant_128); } }); } else { holder.ivImageProd.setImageResource(R.drawable.ic_product_plant_128); } holder.tvNombreProd.setText(prod.getNombre_prod()); holder.tvPrecio.setText(prod.getPrecio() + " Bs."); holder.tvCant.setText(String.valueOf(detalleP.getCantidad())); holder.tvCostoEntrega.setText(detalleP.getCosto_entrega() + " Bs."); holder.tvCosto.setText(new StringBuilder().append(detalleP.getCosto()).append(" Bs.")); ibtnMas = (ImageButton) view.findViewById(R.id.ibtnMasDetallePedido); ibtnMas.setVisibility(View.VISIBLE); ibtnMas.setOnClickListener( new OnClickListener() { @Override public void onClick(View view) { abrirPopupMenu(detalleP); } }); return view; }
public void abrirEditarDetalleVenta() { // inflater = // (LayoutInflater)activity.getBaseContext().getSystemService(activity.LAYOUT_INFLATER_SERVICE); dialogEditar = new AlertDialog.Builder(activity, R.style.Theme_CAT_Alert_Dialog); View dialogView = activity.getLayoutInflater().inflate(R.layout.modelo_editar_detalle_venta, null); // popupWindowEditar = new PopupWindow(dialogView, LayoutParams.MATCH_PARENT, // LayoutParams.WRAP_CONTENT); Producto prod = getProducto(detalle_seleccionado.getIdproducto()); ImageView imageProd = (ImageView) dialogView.findViewById(R.id.ivImagenProdEditarDetalleVenta); if (!prod.getImagen().equals(Variables.SIN_ESPECIFICAR)) { String pathImagen = new StringBuilder(Variables.FOLDER_IMAGES_COOPERATIVA) .append(prod.getImagen()) .toString(); Bitmap bitmap = BitmapFactory.decodeFile(pathImagen); if (bitmap != null) { imageProd.setImageBitmap(bitmap); } else { imageProd.setImageResource(R.drawable.ic_insert_emoticon_white_48dp); } } else { imageProd.setImageResource(R.drawable.ic_insert_emoticon_white_48dp); } tvNombreProd = (TextView) dialogView.findViewById(R.id.tvNombreProdEditarDetalleVenta); tvNombreProd.setText(new StringBuilder(prod.getNombre_prod())); tvNombreProd.setTag(prod); TextView tvPrecioProd = (TextView) dialogView.findViewById(R.id.tvPrecioProdEditarDetalleVenta); tvPrecioProd.setText(new StringBuilder().append(prod.getPrecio()).append("Bs.")); etCantidad = (EditText) dialogView.findViewById(R.id.etCantidadEditarDetalleVenta); etCantidad.setText(String.valueOf(detalle_seleccionado.getCantidad())); LinearLayout lyCostoEntrega = (LinearLayout) dialogView.findViewById(R.id.lyCostoEntregaEditarDetalleVenta); etCostoEntrega = (EditText) dialogView.findViewById(R.id.etCostoEntregaEditarDetalleVenta); lyCostoEntrega.setVisibility(View.VISIBLE); etCostoEntrega.setText(String.valueOf(detalle_seleccionado.getCosto_entrega())); etCostoEntrega.addTextChangedListener(CalcVentaDomicilioWatcher); etCosto = (EditText) dialogView.findViewById(R.id.etCostoEditarDetalleVenta); etCosto.setText(String.valueOf(detalle_seleccionado.getCosto())); dialogEditar.setNegativeButton( R.string.cancelar, new android.content.DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); dialogEditar.setPositiveButton( R.string.aceptar, new android.content.DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { String txtCantidad = etCantidad.getText().toString().trim(); String txtCosto = etCosto.getText().toString().trim(); String txtCostoEntrega = etCostoEntrega.getText().toString().trim(); if (!txtCosto.equals("") && !txtCantidad.equals("") && !txtCostoEntrega.equals("")) { double costo_anterior_pedido = reg_pedido.nuevoPedido.getCosto_total() - detalle_seleccionado.getCosto(); int cant = Integer.valueOf(txtCantidad); double costo_entrega = Double.parseDouble(txtCostoEntrega); double costo = Double.parseDouble(txtCosto); detalle_seleccionado.setCantidad(cant); detalle_seleccionado.setCosto_entrega(costo_entrega); detalle_seleccionado.setCosto(costo); reg_pedido.nuevoPedido.setCosto_total(costo_anterior_pedido + costo); reg_pedido.tvCostoTotal.setText( new StringBuilder() .append(reg_pedido.nuevoPedido.getCosto_total()) .append(" Bs.")); reg_pedido.tvCostoTotal.setTag(reg_pedido.nuevoPedido.getCosto_total()); ListaDetallePedidoAdapter.super.notifyDataSetChanged(); Toast.makeText(activity, "Editado", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(activity, "Sin editar por falta de datos", Toast.LENGTH_SHORT).show(); } } }); dialogEditar.setView(dialogView); // dialogEditar.create().show(); AlertDialog d = dialogEditar.show(); int titleDividerId = activity.getResources().getIdentifier("titleDivider", "id", "android"); View titleDivider = d.findViewById(titleDividerId); if (titleDivider != null) { titleDivider.setBackgroundColor(activity.getResources().getColor(R.color.AMARILLO_GOLD)); } WindowManager.LayoutParams lp = new WindowManager.LayoutParams(); lp.copyFrom(d.getWindow().getAttributes()); lp.width = WindowManager.LayoutParams.FILL_PARENT; lp.height = WindowManager.LayoutParams.WRAP_CONTENT; d.getWindow().setAttributes(lp); }