java - set height view to match parent with animation in android -


how change height of view match_parent when there click?

public class resizeanimation extends animation {     final int startheight;     final int targetheight;     private final boolean isopen;     view view;      public resizeanimation(view view, int height, boolean isopen) {         this.view = view;         this.targetheight = height;         this.isopen = isopen;         startheight = view.getheight();     }      @override      protected void applytransformation(float interpolatedtime, transformation t) {         int newheight;         if (isopen) {             newheight = (int) (startheight + (targetheight - startheight) * interpolatedtime);         } else {             newheight =  (int) (startheight + targetheight * interpolatedtime);         }         view.getlayoutparams().height = newheight;         view.requestlayout();     }      @override     public void initialize(int width, int height, int parentwidth, int parentheight) {         super.initialize(width, height, parentwidth, parentheight);     }      @override     public boolean willchangebounds() {         return true;     } } 

resizeanimation resizeanimation = new resizeanimation(view, match_parent, false); resizeanimation.setduration(500); view.startanimation(resizeanimation); 

your animation doesn't work because passing view.match_parent(which value -1) target height. quoting documentation:

int match_parent [...] constant value: -1 (0xffffffff)

you have pass real target height. can accomplish measuring future target height in parent layout after has been rendered (i recommend viewtreeobserver.ongloballayout() that).


Comments

Popular posts from this blog

Command prompt result in label. Python 2.7 -

javascript - How do I use URL parameters to change link href on page? -

amazon web services - AWS Route53 Trying To Get Site To Resolve To www -