Code example for ImageView

Methods: getDrawablesetImageDrawable

0
 
            StateListDrawable states = new StateListDrawable();
            states.addState(new int[] {android.R.attr.state_pressed}, outlineD);
            states.addState(new int[] {android.R.attr.state_focused}, outlineD);
            states.addState(new int[] {}, originalD);
            v.setImageDrawable(states);
        } 
    } 
 
    /** 
     * Invalidates the pressed/focused states. 
     */ 
    void invalidatePressedFocusedStates(ImageView v) {
        mStatesUpdated = false;
        if (v != null) {
            v.invalidate();
        } 
    } 
 
    /** 
     * Creates a copy of the original image. 
     */ 
    private Bitmap createOriginalImage(ImageView v, Canvas canvas) {
        final Drawable d = v.getDrawable();
        final Bitmap b = Bitmap.createBitmap(
                d.getIntrinsicWidth(), d.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
 
        canvas.setBitmap(b);
        canvas.save();
            d.draw(canvas);
        canvas.restore();
        canvas.setBitmap(null);
 
        return b;
    } 
 
    /** 
     * Creates a new press state image which is the old image with a blue overlay. 
     * Responsibility for the bitmap is transferred to the caller. 
     */ 
    private Bitmap createPressImage(ImageView v, Canvas canvas) {
        final Drawable d = v.getDrawable();
        final Bitmap b = Bitmap.createBitmap(
                d.getIntrinsicWidth(), d.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
 
        canvas.setBitmap(b);
        canvas.save();