android - Is it possible to change MaterialButton's style "on fly"?
问题描述
Android 6.0, Android Studio 3.5
In my android project , in my xml layout:
<com.google.android.material.button.MaterialButton
android:id="@+id/buttonStartSearchBluetooth"
style="@style/buttonEnableStyle"
android:layout_width="0dp"
android:layout_height="@dimen/button_height"
android:layout_margin="@dimen/button_margin"
android:onClick="onClickButtonStartSearch"
android:text="@string/start_search"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
my styles:
<style name="buttonEnableStyle" parent="Widget.MaterialComponents.Button.UnelevatedButton">
<item name="android:textColor">@color/text_color_states_materialbuttons</item>
<item name="backgroundTint">@color/color_states_materialbutton</item>
<item name="android:textAppearance">@style/byttonTexAppearanceStyle</item>
</style>
<style name="buttonClickStyle" parent="@style/Widget.MaterialComponents.Button">
<item name="android:textColor">@color/button_bg_color</item>
<item name="backgroundTint">@color/button_click_bg_color</item>
<item name="android:textAppearance">@style/byttonTexAppearanceStyle</item>
</style>
When click on this button I want to change style from buttonEnableStyle
to buttonClickStyle
"on fly". Is it possible to do this programmaticaly?
解决方案
推荐阅读
- html - 如何处理网站中服务器根目录上方的文件
- r - 是否可以在 R 中运行时设置函数的环境?
- ruby - 网络爬行。无法正确抓取数据
- rust - Rust 借用某些对象类型而不是其他对象类型?
- ubuntu - 如何将 *.tgz 的内容列表转储到文本文件而不提取它(Ubuntu)?
- makefile - 如何查看“make”执行的命令?
- jquery - 在滚动时执行此操作,然后在滚动时执行此操作
- android - Android 漏洞导出活动=true
- javascript - 如何在nodejs中将MongoDb ObjectId(“uniqueid”)序列化为JSON?
- python - Keras:valueerror:无法将大小为 4096 的数组重塑为形状(1,64,64,3)