Удалить элемент из ListView и из файла - PullRequest
0 голосов
/ 21 марта 2011

Итак, я храню свои данные в IO-файле! Мои данные отображаются, и я хочу удалить элемент из списка, я сделал этот код и застрял!

L.setOnItemLongClickListener(new OnItemLongClickListener() {

            @Override
            public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                    final int arg2, long arg3) {

                AlertDialog alert_reset;
                AlertDialog.Builder builder = new AlertDialog.Builder(activity);
                builder.setMessage("Supprimer cette donnée ?")
                        .setCancelable(false)
                        .setPositiveButton("Oui",
                                new DialogInterface.OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog,
                                            int id) {
                                        .............
                                updatelv(activity);
                                    }
                                })
                        .setNegativeButton("Non",
                                new DialogInterface.OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog,
                                            int id) {
                                        dialog.cancel();
                                    }
                                });
                alert_reset = builder.create();
                alert_reset.show();

                return true;
            }

Должен ли я использовать List.remove(arg2)? И для удаления данных из файла, как я могу это сделать? Спасибо.

Ответы [ 2 ]

3 голосов
/ 21 марта 2011

Чтобы удалить элемент из ListView (который представляет собой просто отображение некоторых данных), вам необходимо удалить элемент из данных, которые поддерживают ListAdapter.

Типичным примером является адаптер, содержащий список,Чтобы удалить элемент из списка и обновить ListView, вы должны сделать что-то вроде этого.

myList.remove(arg2); // remove the item
myAdapter.notifyDataSetChanged(); // let the adapter know to update
0 голосов
/ 21 марта 2011

ИМХО самый простой способ - начать с удаления записи в файле, а затем перезапустить процесс buildList.Так как старой записи больше нет в файле, новый список больше не будет ее отображать.

Об удалении в файле, это скорее вопрос на основе Java, чем Android, и это зависит также от магазинаформат, который вы используете (xml, json, custom?).Вы должны рассмотреть возможность использования базы данных, которая является более гибкой и простой в обновлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...