Android:方形按钮

时间:2015-02-20 17:08:16

标签: android

如何在Android中获得方形按钮?

我尝试创建一个按照此link提供的扩展Button类的自定义按钮。 我使用了以下代码:

import android.content.Context;
import android.util.AttributeSet;
import android.widget.Button;

public class SquareButton extends Button {

    public SquareButton(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    public SquareButton(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public SquareButton(Context context) {
        super(context);
    }

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

        int w = MeasureSpec.getSize(widthMeasureSpec);
        int h = MeasureSpec.getSize(heightMeasureSpec);

        w = Math.min(w, h);
        h = w;

        setMeasuredDimension(w, h);
    }
}

我获得了方形按钮,但是它们太大了,显示here,在这种情况下,边距太大了。 如何绘制具有合适尺寸的方形按钮,如this,具有合适的边距尺寸?

感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用标准Button并在XML代码中设置其宽度和高度。要稍后轻松更改大小并使用不同大小的按钮,您可以将值放在文件res / values / dimens.xml中,如下所示:

<resources>
  <dimen name="square_button_normal">50dp</dimen>
  <dimen name="square_button_large">70dp</dimen>
</resources>

然后在yout布局文件中使用它:

<Button
    android:layout_width="@dimen/square_button_normal"
    android:layout_height="@dimen/square_button_normal"
    android:text="1"/>