Кнопка настройки, отображаемая через RemoteViews
Я строю виджет, в котором есть кнопка. Значок на кнопке (который обычно устанавливается через drawableLeft="@drawable/some_image"
в XML) должен меняться динамически. Я думал, что я мог бы использовать RemoteViews.setString(R.id.widget_button, "drawableLeft", "@drawable/some_image")
установить иконку динамически, но виджет просто не загружается должным образом. Кто-нибудь знает, как установить значок кнопки в RemoteViews
динамически?
1 ответ
drawLeft
не имеет прямого метода эквивалента: чтобы установить его из кода, который вам нужно использовать setCompoundDrawables
и связанные с ним методы. К сожалению, это методы с несколькими аргументами, которые RemoteViews
не является общедоступным, так что вам может не повезти.
Одно из возможных решений (но очень хитрое): реализовать несколько макетов с различными возможными изображениями, а затем использовать RemoteViews.addView
функция для их динамической загрузки.
Может работать.