将 xml 样式应用于代码上的按钮.没有错误消息,但也没有样式



我正在尝试为代码创建的按钮提供样式。文件类型有以下行。

<style name="buttonStyle">
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">match_parent</item>
    <item name="android:textColor">#33B5E5</item>
    <item name="android:textStyle">bold</item>
    <item name="android:gravity">center</item>
    <item name="android:layout_margin">2dp</item>
    <item name="android:shadowColor">#000000</item>
    <item name="android:shadowDx">1</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">2</item>
</style>

现在我正在做

    nextpersonbtn = new Button(this, null, R.style.buttonStyle);
    nextpersonbtn.setText("Second person");

日志猫中没有错误消息。程序在模拟器中运行良好。但是按钮没有任何样式。甚至不是它的默认样式。测试"第二人称"像文本视图一样站立。任何人都可以建议我做错了什么。

我相信

您正在尝试的内容仅适用于 API 11 及更高版本。或者,您可以在 xml 中创建 thr 按钮,例如:

<?xml version="1.0" encoding="utf-8"?>
<Button xmlns:android="http://schemas.android.com/apk/res/android"
        style="@style/buttonStyle"/>

并将其应用于按钮,例如:

Button nextpersonbtn = (Button)  getLayoutInflater().inflate(R.layout.template_button, null);

仅适用于 API 级别 11

对于低于 11 的 API 我建议你将按钮定义为具有你想要的所有样式的XML,并简单地将该XML膨胀到代码中的对象。

最新更新