Если вы передаете ArrayList
в Adapter
и добавляете элементы в onCreate
, это было бы до того, как приложение нарисовало ваш первый кадр.
Существуетмомент, когда вы можете добавлять элементы, потому что адаптер не выложил элементы.
А внутри вашего onClick
это будет после того, как onCreate
закончится, что означает adapter
уже выложен.
Вы можете попробовать переместить add("c");
в onPostCreate
или onResume
, и вы можете увидеть результат, аналогичный вашему onClick
.