0

このコードを使用してカスタム ボタンを作成しました。

Button goButton = (Button) findViewById(R.id.buttonStartTest);
    View v = findViewById(R.id.buttonStartTest);
    v.setBackground( new DrawableGradient(new int[] { btnColor,btnColor, 0xffffffff }, 110,10));
    goButton.setText(getString(R.string.START_FORM));

DrawableGradent は次のようになります。

public class DrawableGradient extends GradientDrawable {
    DrawableGradient(int[] colors, int cornerRadius,int strokeSize) {
        super(Orientation.BOTTOM_TOP, colors);

        try {
            this.setShape(GradientDrawable.RECTANGLE);
            this.setGradientType(GradientDrawable.LINEAR_GRADIENT);
            this.setCornerRadius(cornerRadius);
            int strokeColor = Color.argb(50, 0, 0, 0);
            this.setStroke(strokeSize,strokeColor);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

これにより、次のようなボタンが作成されます。 結果のボタン

これは、ストロークがボタンの外側にのみあることを除いて、私が取得したいものです。どうすればこれを達成できますか?

これは、望ましい外観です。 望ましい外観

ご協力いただきありがとうございます!:) /ダニエル

4

0 に答える 0