Не удаляет онлайн-список - Android REST Retrofit - PullRequest
0 голосов
/ 15 октября 2018

Я использую модификацию для связи с REST Api в приложении Android.Отображение данных, загруженных из JSON, работает очень хорошо.Я хочу удалить данные.Я использовал ClickListener, и он удаляет данные с сервера, но не удаляет их из онлайн-списка.Как это сделать после перезагрузки перезагрузки списка?

@Override
public void onBindViewHolder(@NonNull ViewHolder viewHolder, final int i) {
    Log.d(TAG, "onBindViewHolder: called.");

    viewHolder.productNameTextView.setText(arrayListProducts.get(i).getName());

    viewHolder.parentLayout.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Log.d(TAG, "onClick: clicked on: " + arrayListProducts.get(i).getName());

            Toast.makeText(context, "Kliknąłeś: " + arrayListProducts.get(i).getName(), Toast.LENGTH_SHORT).show();
        }
    });

    viewHolder.deleteImage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Toast.makeText(context, "Delete: " + arrayListProducts.get(i).getName(), Toast.LENGTH_SHORT).show();
            RetrofitRequest.delete(arrayListProducts.get(i).getId());

        }
    });

Когда я снова запускаю приложение, список получает новое и нет удаленных данных, но я хочу удалить его сразу после нажатия накорзина и список были показаны без этих удаленных данных.У вас есть пример с GitHub, где он работает?

1 Ответ

0 голосов
/ 15 октября 2018

У вас должен быть обратный вызов из Retrofit, который содержит onSuccess Если это так, вы можете просто удалить объект из списка данных и вызвать notifyDataSetChanged();

viewHolder.deleteImage.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(context, "Delete: " + arrayListProducts.get(i).getName(), Toast.LENGTH_SHORT).show();
        RetrofitRequest.delete(arrayListProducts.get(i).getId());
        arrayListProducts.remove(i);
        notifyDataSetChanged();
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...