Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.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_Layout_Button - Fatal编程技术网

Android 按下按钮时,按钮大小和背景颜色发生变化

Android 按下按钮时,按钮大小和背景颜色发生变化,android,layout,button,Android,Layout,Button,我正在尝试创建一个有3个按钮的布局,我想让每个按钮的宽度都达到屏幕宽度的30%。 最好的方法是什么 我的第二个问题是,, 如何定义按钮的按下颜色? 我希望按钮是绿色的,按下时变成红色 谢谢! 马可 现在使用30%的宽度变量,对于颜色,只需在不同状态下使用drawable,请参见为按钮设置颜色的最佳方法是在按下/激活/禁用/聚焦按钮时为按钮创建自定义可绘制内容(在我的示例中,我使用button_Fadeled.png、button_down.png和button_up.png)然后定义一个xml来

我正在尝试创建一个有3个按钮的布局,我想让每个按钮的宽度都达到屏幕宽度的30%。 最好的方法是什么

我的第二个问题是,, 如何定义按钮的按下颜色? 我希望按钮是绿色的,按下时变成红色

谢谢! 马可


现在使用30%的宽度变量,对于颜色,只需在不同状态下使用drawable,请参见

为按钮设置颜色的最佳方法是在按下/激活/禁用/聚焦按钮时为按钮创建自定义可绘制内容(在我的示例中,我使用button_Fadeled.png、button_down.png和button_up.png)然后定义一个xml来告诉按钮如何使用它:

button.xml:

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/button_faded"
          android:state_enabled="false" />
    <item android:drawable="@drawable/button_down"
          android:state_pressed="true" />
    <item android:drawable="@drawable/button_up"
          android:state_focused="true" />
    <item android:drawable="@drawable/button_up" />
</selector>
在布局xml中,告诉按钮使用样式:

    <Button style="@style/Button" />


至于按钮的布局。。。如果要查找每个屏幕的1/3,请创建一个包含所有三个按钮的水平线性布局。设置按钮宽度以填充父项,并为它们提供相同的布局权重,例如“1”。。。这将用3个大小相同的按钮填充该行。然后,您可以使用布局边距或填充来调整它们之间的间距。

是否希望它们在释放时再次变为绿色?
<style name="Button">
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:textColor">#000000</item>
    <item name="android:textSize">19sp</item>
    <item name="android:background">@drawable/button</item>
    <item name="android:gravity">center</item>
    <item name="android:paddingLeft">0dp</item>
    <item name="android:paddingRight">0dp</item>
    <item name="android:paddingTop">5dp</item>
    <item name="android:paddingBottom">5dp</item>
</style>
    <Button style="@style/Button" />