我可以使用xml中的android:theme
属性将主题设置为按钮。是否有任何等效的程序代码?
<Button
android:id="@+id/btnPayment"
android:layout_height="wrap_content"
android:layout_width="0dp"
android:layout_weight="1"
android:text="Add Payment"
android:theme="@style/ButtonPeter" // theme..
/>
style.xml
<style name="ButtonPeter" parent="Widget.AppCompat.Button">
<item name="colorButtonNormal">@color/fbutton_color_peter_river</item>
<item name="android:textColor">@android:color/white</item>
</style>
我可以使用此类btnPayment.setTheme(R.style.ButtonPeter)
动态设置主题吗?
我搜索了很多,但所有帖子都与集style
相关或创建动态button
并对其应用样式但我不想这样做。我想将theme
设置为button
如何实现这一目标?
答案 0 :(得分:1)
我认为您对style
和theme
感到困惑。从document开始,theme
表示整个活动,style
用于查看。
样式是一组属性,用于指定视图或窗口的外观和格式。
主题是应用于整个活动或应用程序的样式,而不是单个视图。
对于此代码:
android:theme="@style/ButtonPeter" // theme is used but only valid style attributes for button will be applied
希望得到这个帮助。
答案 1 :(得分:0)
在我提到 here 时,使用TextViewCompat.setTextAppearance
应该有效: - )