Измените каждую линейную видимость внутри адаптера

Я пытаюсь изменить видимость каждого линейного макета внутри адаптера, кроме выбранного.

  LinearLayout mylinearlayout = row.FindViewById<LinearLayout>(Resource.Id.test);
  btn.Click += delegate
        {
            for (int i = 0; i < parent.ChildCount; i++)
            {
                if (i == position)
                {

                    mylinearlayout .GetChildAt(i).Visibility = ViewStates.Visible;
                }
                else
                {

                    mylinearlayout .GetChildAt(i).Visibility = ViewStates.Gone;
                }

            }
I get error System.NullReferenceException: Object reference not set to an instance of an object.

Img

Почему вы зацикливаетесь на parent.ChildCount и получаете доступ к дочернему элементу mylinearlayout внутри цикла?

Sandip Fichadiya 08.04.2018 21:14

у меня есть скрытый макет под моим основным макетом в той же строке. Мне нужно, чтобы на показ были только все отобранные. CheckImage

Dhn 08.04.2018 21:20

Вы используете класс Model или POJO для ListView? Я подозреваю, что с этим очень меньшим количеством кода проблема в том, что ListView перерабатывает представление, которое не отображается на экране, и, следовательно, вы получаете исключение NullReferenceException.

Sandip Fichadiya 08.04.2018 21:25

Я использую кастомный адаптер. Если я буду использовать parent вместо linear, работает, но он делает невидимыми всю мою строку, которая мне не нужна. Мне нужна только конкретная линейка, чтобы сделать невидимым

Dhn 08.04.2018 21:28

Как я могу изменить видимость макета примера с помощью динамического положения? внутри кастомного адаптера? ss.GetChildAt (tesss) .Visibility = ViewStates.Gone;

Dhn 08.04.2018 22:06

Не могли бы вы предоставить больше кода? Где ваша кнопка в списке или нет? Как получить position? Пожалуйста, предоставьте дополнительную информацию.

Billy Liu - MSFT 30.04.2018 09:10
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
6
37
0

Другие вопросы по теме