У меня есть приложение, которое имеет SlidingPaneLayout
слева (по умолчанию скрыто) и основной макет в видимой части экрана.Элементы пользовательского интерфейса, такие как TextView
s, значки (с использованием vectors
) и SeekBar
, отображаются в этом основном макете и обновляются в зависимости от взаимодействия с пользователем.Макет создан с использованием ConstraintLayout
.
<com....SlidingPaneLayout
layout_width="match_parent"
layout_height="match_parent">
<android.support.constraint.ConstraintLayout
android:id="@+id/left_panel"
layout_width="200dp"
layout_height="match_parent">
...
</android.support.constraint.ConstraintLayout>
<android.support.constraint.ConstraintLayout
android:id="@+id/main_layout"
layout_width="match_parent"
layout_height="match_parent">
...
<ImageView
android:id="@+id/iv_example_icon"
app:srcCompat="@drawable/ic_icon" />
...
</android.support.constraint.ConstraintLayout>
</com....SlidingPaneLayout>
В этом макете нет ничего странного.Компоненты обновляются с использованием таких методов, как setText
, setImageResource
и т. Д., Вызываемых из основного потока.Проблема в том, что на некоторых устройствах (последний случай на Samsung J3, Android 5.1.1) эти методы не работают (он работает на тысячах других устройств).Элемент щелкается, но содержимое не обновляется (например, изменение значка, когда пользователь касается значка).Он обновляется только после отображения SlidingPane
(проведенного слева) или возобновления активности.Кто-нибудь знает, что может помешать приложению обновлять эти элементы?Это работало хорошо до нового обновления.Новое обновление принесло: ConstraintLayout
, png background, vector
icons.
Спасибо.