Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 切换按钮';其外观取决于它是否';是否启用_Android_Android Layout_Android Ui - Fatal编程技术网

Android 切换按钮';其外观取决于它是否';是否启用

Android 切换按钮';其外观取决于它是否';是否启用,android,android-layout,android-ui,Android,Android Layout,Android Ui,我正在开发一个向导UI,只有当表单符合某些条件时,用户才能在其中继续操作 到目前为止,我已经成功地开发了按钮背后的所有逻辑以及按钮本身的布局,因此我只能在用户插入一些信息时启用前进按钮 <Button android:id="@+id/btnForward" style="@style/buttonForward_disabled" android:enabled="false" /> 和按钮在实例化到布局中时正确显示。明显的问题是按钮。setEnabled

我正在开发一个向导UI,只有当表单符合某些条件时,用户才能在其中继续操作

到目前为止,我已经成功地开发了按钮背后的所有逻辑以及按钮本身的布局,因此我只能在用户插入一些信息时启用前进按钮

<Button
    android:id="@+id/btnForward"
    style="@style/buttonForward_disabled"
    android:enabled="false" />
和按钮在实例化到布局中时正确显示。明显的问题是
按钮。setEnabled(true)
仅使按钮可单击,但根本不会更改布局。在上面的示例中,您可以看到,在这两种情况下,文本都是白色的:在不久的将来,只要我查看所有的图形,文本就会发生变化


我已经读到,我无法在运行时以编程方式更改按钮的样式。如何根据按钮的启用状态使其看起来不同?

使用。他们的本意就是做你想做的事。基本上,它们根据选择、聚焦和启用状态定义应用于按钮的不同样式。

在您链接的示例中,我看到颜色也有选择。我的Eclipse没有向我显示android:color属性:它与我的项目中的最小SDK为7有关吗?对不起,我不知道答案。我一直使用API级别>=8。别担心,我会深入研究这个问题
<style name="buttonFB">
    <item name="android:textAppearance">?android:attr/textAppearanceLarge</item>
    <item name="android:textColor">#ffffff</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_width">wrap_content</item>
    <item name="android:layout_weight">0.4</item>
    <item name="android:layout_marginBottom">25dp</item>
    <item name="android:layout_alignParentBottom">true</item>
    <item name="android:enabled">true</item>
</style>


<style name="buttonFB_disabled" parent="buttonFB">
    <item name="android:textColor">#ffffff</item>
    <item name="android:enabled">false</item>
</style>

<style name="buttonForward_disabled" parent="buttonFB_disabled">
    <item name="android:background">@drawable/btnfw_disabled</item>
    <item name="android:layout_alignParentRight">true</item>
    <item name="android:layout_marginRight">14dp</item>
    <item name="android:text">@string/Forward</item>
</style>

<style name="buttonBackward_disabled" parent="buttonFB_disabled">
    <item name="android:background">@drawable/btnfw_disabled</item>
    <item name="android:layout_alignParentLeft">true</item>
    <item name="android:layout_marginLeft">14dp</item>
    <item name="android:text">@string/Backward</item>
</style>