Как создать собственный виджет в Android

Я работаю над приложением пожелания дня рождения. Я хочу создать напоминание о дне рождения моих друзей на главном экране мобильного телефона. Но я хочу, чтобы вид его как пользовательский виджет. Может кто-нибудь помочь мне в том, как динамически создавать виджеты в Android? Это с помощью кодирования.

1 ответ

public class DynamicImageButton extends ImageView {

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

    @Override
    protected void onMeasure(final int widthMeasureSpec, final int heightMeasureSpec) {
        final Drawable d = this.getDrawable();

        if (d != null) {
            // ceil not round - avoid thin vertical gaps along the left/right edges
        final int width = MeasureSpec.getSize(widthMeasureSpec);
        final int height = (int) Math.ceil(width * (float) d.getIntrinsicHeight() / d.getIntrinsicWidth()-10);
            this.setMeasuredDimension(width, height);
        } else {
            super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        }
    }
}

Это будет

Другие вопросы по тегам