У меня есть класс с именем PlayerList, в в этом классе у меня есть ArrayList определено, как это:Как удалить Bitmap из ArrayList?
private ArrayList<Bitmap> images = new ArrayList<Bitmap>();
Теперь метод ArrayList может удалить 2 аргумента Зависит, индекс и объекта.
Я пытаюсь удалить растровое изображение из массива, отправив ему Bitmap. Дело в том, что бит-карта сделана из одного и того же изображения, но вставка битмапа, которую я сохранил в массиве, не то же самое, я пытаюсь найти, когда я печатаю ArrayList для консоли, я все время вижу новые имена, например:
[[email protected], [email protected]]
Это может быть связано? и в то время как в этом нет, класс реализует Parcelable
, поэтому данные, которые читаются/записываются взад и вперед, тоже не могут быть слишком здоровыми, верно?
У меня отсутствует общая проблема или ее код, и я должен опубликовать свой код?
Моя проблема здесь basiclly когда я пытаюсь удалить Bitmap, он ВСЕГДА удаляет неправильный элемент в ArrayList, всегда 1 до 1 мне нужно
Если экземпляр отличается, если вы не создаете методы equals/hash, которые проверяют содержимое * изображения *, вам не повезло. Вы можете использовать другой механизм, например, дать им идентификатор или ссылаться на них по имени и т. Д. –
И если я буду использовать Drawable вместо этого? это будет работать? –
Речь идет не о том, каким интерфейсом обладает ваш класс «Bitmap». Метод 'remove' использует метод' equals' вашего объекта «Bitmap», чтобы найти и удалить его из списка. Итак, если вы не правильно реализуете метод 'equals' в классе« Bitmap », вы не можете ожидать, что метод ArrayList.remove удалит правильный объект. –