Ответ 1
Я думаю, вы можете просто использовать
findViewById(your_view_id)
метод: если его результат равен нулю, представление не существует, в противном случае представление присутствует
В моем классе фрагмента я добавляю элемент детского представления программно к моему расположению условно:
LinearLayout child = (LinearLayout) inflater.inflate(R.layout.child_view, null);
LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT,100);
container.addView(child, params);
Так как вышеупомянутый код будет выполняться условно, значит, в какой-то момент я хотел бы проверить, добавлено ли дочернее представление или нет, как это сделать программно?
Я думаю, вы можете просто использовать
findViewById(your_view_id)
метод: если его результат равен нулю, представление не существует, в противном случае представление присутствует
Если вы создаете представление через надувной элемент, вы можете проверить его родительский
if(view.getParent() != null) {...}
Извините за поздний ответ, но вы можете попробовать эту альтернативу:
используйте container.getChildCount();
перед добавлением и после добавления представления. Например:
int x = container.getChildCount();
container.addView(child, params);
int y = container.getChildCount();
if(y > x)
Toast.makeText(context, "View Successfully Added!", Toas.LENGTH_SHORT).show();
Я не могу написать комментарий, поэтому я пишу его здесь как решение:
Из уровня API 19 вы можете вызвать isAttachedToWindow()
, который не очень помогает, но если вы нацеливаете API 19
или выше, то это должно работать с документацией.