У меня ошибка, которую я не могу понять причину и способы ее устранения.Я верю, что это проблема обновления макета / представления / контекста, но я не знаю.
У меня есть ячейка из listView (я предпочитаю recyclerView, но у проекта есть годы), и в углу ячейки у меня естькнопка, чтобы показать больше вариантов.Программно он просто делает элемент View.GONE и другой элемент View.VISIBLE.
Я приложу код через мгновение
К этой кнопке я также установил слушателя, который, когда я нажимаю на нее, этосделать противоположное из нижеприведенного.Он показывает некоторые элементы и скрывает весь LinearLayout из ячейки.Элементы показаны, НО LinearLayout держится на экране как жучки.Если я нажимаю в любом месте, он исчезает, и если я пытаюсь нажать на него, он тоже исчезает.Это похоже на то, как вид этой линейки прослушивался и держался там, как призрачный вид.Я сделаю несколько снимков.
Ячейка обычно в начале: https://imgur.com/1BjK0KP
Ячейка после того, как я нажимаю весь вид, чтобы показать LinearLayout внизу ячейки: https://imgur.com/eONSptW
Ячейка после нажатия стрелки на углу, чтобы скрыть LinearLayout.Здесь показано отображение ошибки https://imgur.com/jrT0qxV
Ячейка после нажатия где-либо еще https://imgur.com/XD1jN7U
public void expandView(View view){
final View cellView = view;
final LinearLayout editLinear = (LinearLayout) view.findViewById(R.id.cart_edit);
editLinear.setVisibility(View.VISIBLE);
final TextViewFont countText = (TextViewFont) view.findViewById(R.id.itemCount);
countText.setVisibility(View.GONE);
final TextViewFont total = (TextViewFont) view.findViewById(R.id.itemTotal);
final ImageView imageViewArrow = (ImageView) view.findViewById(R.id.cart_edit_image);
imageViewArrow.setImageDrawable(context.getResources().getDrawable(R.drawable.icon_arrow_up));
//notifyDataSetChanged();
imageViewArrow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
countText.setVisibility(View.VISIBLE);
editLinear.setVisibility(View.GONE);
imageViewArrow.setImageDrawable(context.getResources().getDrawable(R.drawable.icon_arrow_down));
}
});