Я имею этот Button
в моем XML:Как изменить цвет материала значок дизайна, используемого в Button в Android
<Button
android:id="@+id/button_message_me"
style="@style/Widget.AppCompat.Button.Borderless.Colored"
android:layout_width="0dp"
android:layout_weight="0.25"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:background="@drawable/ic_chat_white_48dp"
android:onClick="clickMessageMe"/>
Однако, я хочу, чтобы изменить цвет ic_chat_white_48dp
от белого до синего. Как сделать изменения?
То, что я уже пытался до сих пор:
После прочтения this поста, я попытался с помощью android:tint="@color/blue"
, но это не сработало.
Так, думая, что я, возможно, придется использовать ImageButton
вместо Button
(как указано в answer) я заменил Button
с ImageButton
в моем XML, но я приземлился на получении исключение:
java.lang.RuntimeException : не удается запустить активность ComponentInfo {chat.knowme.knowme/chat.knowme.knowme.ShowProfileActivity}: java.lang.ClassCastException: android.support.v7.widget.AppCompatImageButton не может быть приведен к android.widget.Button
Любая помощь была бы действительно оценена. Большое спасибо!
Update: Грохот был, потому что я был заливкой ImageButton
к Button
в моем источнике. Я исправил это и теперь больше не терпит крах (спасибо Patel Pinkal за его ответ).
Однако, цвет по-прежнему остается неизменным даже при ImageButton
введите код инициализации 'Button' –
Для этой кнопки не инициализирован код как таковой. Я использовал '(Button) findViewById (R.id.button_message_me);' всякий раз, когда я хотел показать/скрыть эту кнопку. И написали метод clickMessageMe для кнопки. Тем не менее, сбой происходит, как только я запускаю деятельность. – Atul
см. Ниже ответ –