【问题标题】:Android radius buttonAndroid 半径按钮
【发布时间】:2013-07-16 17:30:27
【问题描述】:

我有一个这样的按钮

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:layout_centerInParent="true"
    android:text="ButtonText"
    style="@style/ButtonText"/>

还有这种风格

<style name="ButtonText">
    <item name="android:layout_margin">3dp</item>
    <item name="android:textSize">20sp</item>
    <item name="android:textStyle">bold</item>
    <item name="android:shadowColor">#000000</item>
    <item name="android:shadowDx">1</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">2</item>
</style>

现在我想为按钮添加半径,我尝试了&lt;item name="android:radius"&gt;6dp&lt;/item&gt;,但它不起作用。有什么办法解决这个问题?

【问题讨论】:

    标签: java android xml button


    【解决方案1】:

    我相信为一个按钮添加半径,你必须创建一个自定义可绘制对象(参见link,特别是形状可绘制部分)

    然后,定义drawable,设置按钮的backgroundxml标签等于你的drawable文件:

    android:background="@drawable/your_file"

    【讨论】:

      【解决方案2】:

      在你的drawable文件夹中,创建一个round_button.xml

      <?xml version="1.0" encoding="utf-8"?>
      <!-- http://www.dibbus.com/2011/02/gradient-buttons-for-android/ -->
      <selector xmlns:android="http://schemas.android.com/apk/res/android">
          <item>
              <shape>
      
                  <corners
                      android:radius="2dp" />
                  <padding
                      android:left="10dp"
                      android:top="10dp"
                      android:right="10dp"
                      android:bottom="10dp" />
              </shape>
          </item>
      </selector>
      

      然后在包含按钮的xml中,将背景设置为:

      android:background="@drawable/round_button"

      【讨论】:

      • android:background="@drawable/round_button"
      猜你喜欢
      • 2023-03-31
      • 2013-12-13
      • 2013-01-26
      • 2013-01-19
      • 2018-07-05
      • 1970-01-01
      • 1970-01-01
      • 2016-10-15
      • 1970-01-01
      相关资源
      最近更新 更多