android 工作室的黑色按钮操作

Black button action on android studio

我在 android studio 上将按钮颜色更改为黑色,如下所示: 在 colors.xml:

<color name="colorBlack">#000000</color>

在styles.xml中:

 <style name="AppTheme.Button" parent="Base.Widget.AppCompat.Button">
        <item name="colorButtonNormal">@color/colorBlack</item>
    </style>

在layout_frag.xml中:

 <Button
   android:id="@+id/button"
   android:theme="@style/AppTheme.Button"
   android:layout_width="match_parent"
   android:layout_height="75dp"
   android:text="@string/hello_first_fragment"
   android:textColor="@color/design_default_color_background" />

我的黑色按钮工作正常,尽管按下按钮时的色调背景颜色动作不再起作用,因为按钮非常暗,色调通常是深灰色。 ![Button2 色调为灰色 onClick][1] 我想知道单击按钮时在哪里可以更改色调操作?

您可以覆盖 colorControlHighlight 属性:

<androidx.appcompat.widget.AppCompatButton
    android:theme="@style/ThemeOverylay.Button"/>

与:

<style name="ThemeOverylay.Button">
    <item name="colorControlHighlight">@color/....</item>
    <item name="colorButtonNormal">@color/....</item>
</style>

如果您使用 Material 组件主题,您可以使用 MaterialButton rippleColor 属性:

<com.google.android.material.button.MaterialButton
    app:rippleColor="@color/my_selector"
    ../>

使用这样的选择器:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

  <item android:alpha="..." android:color="?attr/colorOnPrimary" android:state_pressed="true"/>
  <item android:alpha="..." android:color="?attr/colorOnPrimary" android:state_focused="true" android:state_hovered="true"/>
  <item android:alpha="..." android:color="?attr/colorOnPrimary" android:state_focused="true"/>
  <item android:alpha="..." android:color="?attr/colorOnPrimary" android:state_hovered="true"/>
  <item android:alpha="..." android:color="?attr/colorOnPrimary"/>

</selector>