小白求RadioButton图片居中方法~大神进来看图

如题图片说明

在论坛里面也回复你了

   @Override
    protected void onDraw(Canvas canvas) {
        Drawable[] drawables = getCompoundDrawables();
        if (drawables != null) {
            Drawable drawableTop = drawables[1];
            if (drawableTop != null) {
                float textHeight=measureHeight(getText().toString());
                int drawablePadding = getCompoundDrawablePadding();
                int drawableHeight = drawableTop.getIntrinsicHeight();
                float bodyHeight = textHeight + drawableHeight + drawablePadding;
                setPadding(0, (int)(getHeight() - bodyHeight), 0, 0);
                canvas.translate(0, 0-(getHeight() - bodyHeight) / 2);
            }
        }
        super.onDraw(canvas);
    }

    //获取文本高度
    public int measureHeight(String text) {
//        Rect result = new Rect();
//        // Measure the text rectangle to get the height
//        getPaint().getTextBounds(text, 0, text.length(), result);
//        return  result.height();
        Paint.FontMetrics fontMetrics= getPaint().getFontMetrics();

        return (int)(fontMetrics.descent-fontMetrics.ascent+ fontMetrics.leading);
    }

你这个图片里图案不是在正中心吧?用PS加工一下再用

<RadioButton

            android:id="@+id/myid"
            style="@style/tab_bottom"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:background="@drawable/tab_style"
            android:drawableTop="@drawable/rest"
            android:text="@string/restaurant" />

RadioButton不是单选按钮么,还能放图片啊

哪个是RadioButton?25?要在谁的垂直居中?背景是控件?还是图片?用MFC编程?
提问题尽量说详细点。

用paddingTop吧

在input中选择属性padding或者margin 自己设置位移即可