2017-01-09 17 views
0

Я использовал около 4 часов для решения проблемы, но я не могу. Я хочу, чтобы мой номер ListView делал что-то в onConfigurationChanged. В первую очередь я следую за вещью.ListView getChildCount() return 1 при вращении

android:configChanges="keyboardHidden|orientation|screenSize" 

и мой Activity реализация onConfigurationChanged, мой Fragment также сделать это. И наконец, я реализую onConfigurationChanged в моем ListView item.All Activity and Fragment будет вызывать onConfigurationChanged при отображении экрана с портрета на пейзаж, но он не будет вызываться в ListView. Я настраиваю ListView и реализую dispatchConfigurationChanged, и я нахожу, что getChildCount вернет 1 в dispatchConfigurationChanged. Потому что мой элемент ListView - 2 и 3, поэтому onConfigurationChanged не будет вызывать. Но как я могу это решить? У меня есть поиск долгое время, но я не могу решить. enter image description here

+0

@ChristopheCVB, но адаптер не может заставить элемент ListView вызывать onConfigurationChanged. –

ответ

0

Может спросить Adapter прилагается к ListView, он знает лучше;)

ListView имеет только один ребенок, LinearLayout, вот почему.

+0

Но мне нужно что-то сделать в элементе списка ListView onConfigurationChanged. он будет вызван из dispatchConfigurationChanged. –

+0

Задайте 'adapter.getCount()' вместо 'listview.getChildCount()'. – ChristopheCVB

+0

Как я могу получить товар? finally item.dispatchConfigurationChanged (newConfig), можете ли вы привести мне пример? –