Android - Problema con la Actualizacion del ListView

 
Vista:

Problema con la Actualizacion del ListView

Publicado por Carlos (3 intervenciones) el 16/02/2018 14:26:08
Buenos dias, solicito ayuda he buscado pero no he encontrado que es lo que estoy haciendo mal para que no me actualize el listview, despues de haber modificado la tabla con un Alertdialog les agradeceria cualquier ayuda

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
public class Pedidos extends Activity implements AdapterView.OnItemSelectedListener {
 
    private List<Productos> productosList = new ArrayList<Productos>();
    private SQLiteDatabase db;
    ListView listViewP;
    TextView textTotal, prodcod, prodnombre, prodstock, prodprecio, totlin;
    EditText editcantidad;
 
    private DBHelper helper;
    Spinner spinnerfamilia;
    private GruposAdapter gruposAdapter;
    private ProductosAdapter productosAdapter;
 
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.pedido);
 
        listViewP = (ListView) findViewById(R.id.listViewP);
        spinnerfamilia = (Spinner) findViewById(R.id.spinner2);
        textTotal = (TextView) findViewById(R.id.textView28);
 
        helper = new DBHelper(this);
        db = helper.getWritableDatabase();
 
        gruposAdapter = new GruposAdapter(this,android.R.layout.simple_spinner_dropdown_item, helper.recuperarGrupos());
        gruposAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
        spinnerfamilia.setAdapter(gruposAdapter);
        spinnerfamilia.setOnItemSelectedListener(this);
 
        productosList = helper.recuperarProductos();
        productosAdapter = new ProductosAdapter(this,productosList);
 
 
 
        listViewP.setAdapter(productosAdapter);
        listViewP.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                Productos productos = productosAdapter.getItem(i);
 
                final String codProd;
                final Integer precio;
 
                codProd = productos.getCodigo();
                precio = productos.getPrecioNeto();
 
                final AlertDialog.Builder mBuilder = new AlertDialog.Builder(Pedidos.this);
                View mView = getLayoutInflater().inflate(R.layout.input_box, null);
 
                prodcod = (TextView) mView.findViewById(R.id.textView21);
                prodnombre = (TextView) mView.findViewById(R.id.textView22);
                prodstock = (TextView) mView.findViewById(R.id.textView23);
                prodprecio = (TextView) mView.findViewById(R.id.textView24);
                editcantidad = (EditText) mView.findViewById(R.id.editText11);
                totlin = (TextView) mView.findViewById(R.id.textView25);
 
                prodcod.setText(codProd);
                prodnombre.setText(productos.getDescripcion());
                prodstock.setText(String.valueOf(productos.getStock()));
                prodprecio.setText("Precio Neto $" + String.valueOf(precio));
                editcantidad.setText(String.valueOf(productos.getCantidad()));
 
                editcantidad.addTextChangedListener(new TextWatcher() {
                    @Override
                    public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
 
                    }
 
                    @Override
                    public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
 
                    }
 
                    @Override
                    public void afterTextChanged(Editable editable) {
                        if(editcantidad.getText().length()>=1) {
                             int precioU =  Math.round(precio*(1+19/100));
                             int total = Integer.valueOf(editcantidad.getText().toString()) * precioU;
                             totlin.setText(String.valueOf(total));
 
                        }
                    }
                });
 
 
                mBuilder.setView(mView)
                .setTitle("Cantidad")
                .setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
 
                    }
                })
                .setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
 
                        helper.actualizarCantProd(codProd, Integer.valueOf(editcantidad.getText().toString()), Integer.valueOf(totlin.getText().toString()));
                        productosAdapter.notifyDataSetChanged();
                    }
                });
 
                AlertDialog dialog =   mBuilder.create();
                dialog.show();
            }
 
        });
 
        textTotal.setText("Total $" + helper.montoPedido());
    }
 
    @Override
    public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
        Grupos grupos = gruposAdapter.getItem(i);
        productosAdapter.getFilter().filter(Long.toString(grupos.getCodGrup()), new Filter.FilterListener() {
            @Override
            public void onFilterComplete(int i) {
 
            }
        });
    }
 
    @Override
    public void onNothingSelected(AdapterView<?> adapterView) {
 
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder