【问题标题】:How can I play with the buttons color and size?如何使用按钮的颜色和大小?
【发布时间】:2014-06-06 00:30:32
【问题描述】:

如何使用按钮大小?例如,这是一个按钮

<Button
    android:id="@+id/button1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:textSize="12sp"
    android:text="About" />

看起来像这样: http://oi58.tinypic.com/2irayky.jpg

当我把手指放在它上面时,它会变成: http://oi61.tinypic.com/2hzu3if.jpg

例如,如何将按钮/矩形的灰色和橙色更改为 #123456?

另一个问题..如何更改矩形高度以使按钮变小?

【问题讨论】:

  • 一个简单的搜索为这个Example带来了很多结果

标签: android xml eclipse


【解决方案1】:

您可以为按钮制作自定义背景。在这个例子中,我们将制作一个渐变。 在 res/drawable 中,创建一个 XML 文件 btn_blue_bg.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape>
            <solid
                android:color="#449def" />
            <stroke
                android:width="1dp"
                android:color="#2f6699" />
            <corners
                android:radius="3dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>
    <item>
        <shape>
            <gradient
                android:startColor="#449def"
                android:endColor="#2f6699"
                android:angle="270" />
            <stroke
                android:width="1dp"
                android:color="#2f6699" />
            <corners
                android:radius="4dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>
</selector>

现在返回到您的按钮,并添加 android:background 规范。

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="150dp"
    android:gravity="center"
    android:background="@drawable/btn_blue_bg"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:textSize="12sp"
    android:text="About" />

如果你愿意,你也可以“玩”宽度和高度属性。

【讨论】:

    【解决方案2】:

    我希望我能理解你在问什么。

    基本上,您将 xml 放入 res/drawable/ 文件夹,而不是 .png。

    在这个 xml 中,您可以指定不同状态的可绘制列表。 参见例如https://stackoverflow.com/a/14397453/755804

    要使按钮在视觉上更小,您可以使用透明颜色,同时保留相同的 png 大小。

    【讨论】:

      【解决方案3】:

      您可以创建一个 xml 来完全个性化您的按钮:为每个状态(在本例中为 state_pressed=true)创建一个项目,如下所示:

      <?xml version="1.0" encoding="utf-8"?>
      <selector xmlns:android="http://schemas.android.com/apk/res/android">
          <item android:state_pressed="true" >
              <shape>
                  <solid
                      android:color="#BABABA" />
                  <stroke
                      android:width="1dp"
                      android:color="#ABABAB" />
                  <corners
                      android:radius="12dp" />
                  <padding
                      android:left="10dp"
                      android:top="10dp"
                      android:right="10dp"
                      android:bottom="10dp" />
                  <size
                      android:width="10dp"
                      android:height="10dp"
                  />
              </shape>
          </item>
      </selector>
      

      然后将此 xml 添加到您的按钮背景中。 android:background="@drawable/your.xml" 希望对您有所帮助。

      【讨论】:

      • 不客气。随时为您认为对您的问题有用的所有答案投票
      猜你喜欢
      • 2015-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-09
      • 1970-01-01
      • 2021-02-24
      相关资源
      最近更新 更多