Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在listview android中更改覆盖notifydatasetchanged?_Android_Android Listview - Fatal编程技术网

如何在listview android中更改覆盖notifydatasetchanged?

如何在listview android中更改覆盖notifydatasetchanged?,android,android-listview,Android,Android Listview,大宗报价 您好,我在应用程序中使用了基本适配器,但当单击“删除”按钮时,时间项被删除,但列表视图未刷新。我还使用了适配器。notifydatasetchanged()。但没有任何用处。请为我提供解决方案 下面我提到了代码: enter code here class listViewEventsAdapterdatabase extends BaseAdapter { LayoutInflater mInflater; OnItemValueCh

大宗报价

您好,我在应用程序中使用了基本适配器,但当单击“删除”按钮时,时间项被删除,但列表视图未刷新。我还使用了适配器。notifydatasetchanged()。但没有任何用处。请为我提供解决方案

下面我提到了代码:

enter code here

class listViewEventsAdapterdatabase extends BaseAdapter {
            LayoutInflater mInflater;
            OnItemValueChange listener;

            public listViewEventsAdapterdatabase(Context context) {
                mInflater = LayoutInflater.from(context);

            }
            public void setOnItemChange(OnItemValueChange onlistener) {
                this.listener = onlistener;

            }
            public int getCount() {
                if (GetAllitemDetails != null) {
                    return GetAllitemDetails.size();
                }

                return 0;
            }

            public Object getItem(int arg0) {
                return arg0;
            }


            public long getItemId(int arg0) {
                return arg0;
            }
            @Override 
            public void notifyDataSetChanged(){
                super.notifyDataSetChanged();
            }

            public View getView(final int position, View convertView,
                    ViewGroup parent) {
                final ViewHolder holder;
                if (convertView == null) {
                    LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

                    convertView = vi.inflate(R.layout.databaselistviewitem, parent,false);
                    holder = new ViewHolder();
                    holder.txtrestaurant_name = (TextView) convertView
                            .findViewById(R.id.databaseproductname);
                    holder.btn_delete = (Button) convertView
                            .findViewById(R.id.buttondelete);
                    holder.edt_quantity = (EditText) convertView
                            .findViewById(R.id.quantity);
                    holder.btn_update = (Button) convertView
                            .findViewById(R.id.bttonupdate);
                    holder.txt_amount = (TextView) convertView
                            .findViewById(R.id.amount);
                    convertView.setTag(holder);
                } else {
                    holder = (ViewHolder) convertView.getTag();
                }
                holder.txtrestaurant_name.setText(GetAllitemDetails.get(position)
                        .get("product"));

                holder.edt_quantity.setText(GetAllitemDetails.get(position).get(
                        "quantity"));
                holder.txt_amount.setText(getDoublePrecision(GetAllitemDetails.get(position).get(
                    "price")));
                holder.btn_delete.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {

                        db = DatabaseHelper.delete_byID(GetAllitemDetails.get(position).get("id"));
                        Toast.makeText(getApplicationContext(), "Delete succesfully", 3000).show();
                        if (listener != null) {
                            Log.e("Callback", (Str_subtotal));
                            listener.totalAmount((Str_subtotal));
                            listener.delivarychargeAmount(String.valueOf(delivarycharge));
                            listener.totalamt(String.valueOf(total));

                            lv_data.invalidateViews();
                            adapter_list.notifyDataSetChanged();
                        }
                    }
                });

                holder.btn_update.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {

                        System.out.println("**************Quantitysdfknsldf:"
                                + holder.edt_quantity.getText().toString().trim());

                        db.updateData(GetAllitemDetails.get(position).get("id"),
                                DatabaseHelper.TABLErestaurant, holder.edt_quantity
                                        .getText().toString());

                        Toast.makeText(getApplicationContext(), "Update succesfully", 3000).show();

                        if (listener != null) {
                            Log.e("Callback", (Str_subtotal));
                            listener.totalAmount((Str_subtotal));
                            listener.delivarychargeAmount(String.valueOf(delivarycharge));
                            listener.totalamt(String.valueOf(total));
                        }

                    }
                });



                return convertView;
            }

        }
enter code here

谢谢

您应该从收藏中删除该项目:
GetAllitemDetails
,然后调用适配器.notifyDatasetChanged(),以刷新列表视图。

在delete按钮函数中尝试此操作

 list.remove(position);
 notifyDataSetChanged();

GetAllitemDetails意味着我从数据库中获得了值我使用了自定义listview。当我们必须单击删除按钮时,动态添加了删除按钮删除了rowid。但是listview并没有刷新Andy Res