【问题标题】:styles and Buttons样式和按钮
【发布时间】:2014-04-07 11:31:43
【问题描述】:

我为按钮创建了一种样式,以“粗体”方式显示。 但是当我使用setEnabled(false)setClickable(false) 时,它使按钮被禁用但我看不到它,因为我使用的是样式,所以我怎样才能使按钮更像“进入”(好像它被点击了)当我使用设置启用(假)???

代码:

signin.setClickable(false);
signin.setEnabled(false);

我不想丢弃样式,而是想修改它,但我不知道如何。

风格:

 <style name="btnStyleShakespeare" parent="@android:style/Widget.Button">
   <item name="android:textSize">15sp</item>
   <item name="android:textStyle">bold</item>
   <item name="android:textColor">#FFFFFF</item>
   <item name="android:gravity">center</item>
   <item name="android:shadowColor">#000000</item>
   <item name="android:shadowDx">1</item>
   <item name="android:shadowDy">1</item>
   <item name="android:shadowRadius">0.6</item>
   <item name="android:background">@drawable/custom_btn_shakespeare</item>
   <item name="android:padding">10dip</item>

感谢您的帮助。

【问题讨论】:

  • 显示您的样式代码。

标签: android android-button android-styles


【解决方案1】:

在 res\color 中创建另一个 XML 文件,命名为 text_color.xml。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <!-- disabled state -->
  <item android:state_enabled="false" android:color="#000000" /> 
  <item android:color="#FFFFFF"/>
</selector>

在你的 style.xml 中,替换

<item name="android:textColor">#FFFFFF</item>

<item name="android:textColor">@color/text_color</item>

【讨论】:

    【解决方案2】:

    您需要使用将设置为按钮背景的自定义选择器列表。
    就像是: btnSelector.xml 在你的/drawable

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <!-- when button is pressed (touched/clicked) -->
        <item android:drawable="@drawable/button_selected" android:state_selected="true" />
        <!-- When button is disabled, i.e clickable and enabled is set to false -->
        <item android:drawable="@drawable/button_disabled" android:state_enabled="false"/>  
          <!-- Default, when button is clickable -->
        <item android:drawable="@drawable/button_normal" android:state_enabled="true" />
    </selector>  
    

    您将拥有 3 个不同的可绘制对象,分别用于单击/按下状态、禁用状态和正常状态。
    然后在您的自定义样式更改中:

    @drawable/btnSelector.xml

    【讨论】:

      猜你喜欢
      • 2014-04-21
      • 2013-02-20
      • 1970-01-01
      • 1970-01-01
      • 2017-01-16
      • 1970-01-01
      • 2016-12-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多