Class Overview
A MeasureSpec encapsulates the layout requirements passed from parent to child.
 Each MeasureSpec represents a requirement for either the width or the height.
 A MeasureSpec is comprised of a size and a mode. There are three possible
 modes:
 
 - UNSPECIFIED
 
 - 
 The parent has not imposed any constraint on the child. It can be whatever size
 it wants.
 
 
 - EXACTLY
 
 - 
 The parent has determined an exact size for the child. The child is going to be
 given those bounds regardless of how big it wants to be.
 
 
 - AT_MOST
 
 - 
 The child can be as large as it wants up to the specified size.
 
 
 
 MeasureSpecs are implemented as ints to reduce object allocation. This class
 is provided to pack and unpack the <size, mode> tuple into the int.
 
Summary
| Constants | 
    
    
        | int | 
        AT_MOST | 
        Measure specification mode: The child can be as large as it wants up
 to the specified size. | 
    
    
    
    
        | int | 
        EXACTLY | 
        Measure specification mode: The parent has determined an exact size
 for the child. | 
    
    
    
    
        | int | 
        UNSPECIFIED | 
        Measure specification mode: The parent has not imposed any constraint
 on the child. | 
    
    
    
| Public Methods | 
	 
    
        | 
            
            
            
            static
            
            int
         | 
        
        getMode(int measureSpec)
        
         Extracts the mode from the supplied measure specification. 
  
   | 
	 
    
        | 
            
            
            
            static
            
            int
         | 
        
        getSize(int measureSpec)
        
         Extracts the size from the supplied measure specification. 
  
   | 
	 
    
        | 
            
            
            
            static
            
            int
         | 
        
        makeMeasureSpec(int size, int mode)
        
         Creates a measure specification based on the supplied size and mode. 
  
   | 
	 
    
        | 
            
            
            
            static
            
            String
         | 
        
        toString(int measureSpec)
        
         Returns a String representation of the specified measure
 specification. 
  
   | 
| 
  [Expand]
   Inherited Methods  | 
   
From class
  java.lang.Object
  
   
  
    
    
	 
    
        | 
            
            
            
            
            
            Object
         | 
        
        clone()
        
         Creates and returns a copy of this Object. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        equals(Object o)
        
         Compares this instance with the specified object and indicates if they
 are equal. 
  
   |  
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        finalize()
        
         Invoked when the garbage collector has detected that this instance is no longer reachable. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            Class<?>
         | 
        
        getClass()
        
        Returns the unique instance of  Class that represents this
 object's class.  
  
   |  
	 
    
        | 
            
            
            
            
            
            int
         | 
        
        hashCode()
        
         Returns an integer hash code for this object. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        notify()
        
         Causes a thread which is waiting on this object's monitor (by means of
 calling one of the wait() methods) to be woken up. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        notifyAll()
        
         Causes all threads which are waiting on this object's monitor (by means
 of calling one of the wait() methods) to be woken up. 
  
   |  
	 
    
        | 
            
            
            
            
            
            String
         | 
        
        toString()
        
         Returns a string containing a concise, human-readable description of this
 object. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        wait()
        
         Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        wait(long millis, int nanos)
        
         Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object or until the
 specified timeout expires. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        wait(long millis)
        
         Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object or until the
 specified timeout expires. 
  
   |  
 
   
 
 | 
 
Constants
 
    
      
        public 
        static 
        final 
        int
      
        AT_MOST
    
      
    
      
  Measure specification mode: The child can be as large as it wants up
 to the specified size.
 
    
        
        Constant Value: 
        
            
                -2147483648
                (0x80000000)
            
        
        
    
     
 
 
    
      
        public 
        static 
        final 
        int
      
        EXACTLY
    
      
    
      
  Measure specification mode: The parent has determined an exact size
 for the child. The child is going to be given those bounds regardless
 of how big it wants to be.
 
    
        
        Constant Value: 
        
            
                1073741824
                (0x40000000)
            
        
        
    
     
 
 
    
      
        public 
        static 
        final 
        int
      
        UNSPECIFIED
    
      
    
      
  Measure specification mode: The parent has not imposed any constraint
 on the child. It can be whatever size it wants.
 
    
        
        Constant Value: 
        
            
                0
                (0x00000000)
            
        
        
    
     
 
Public Constructors
 
    
      
        public 
         
         
         
         
        
      
      View.MeasureSpec
      ()
    
      
    
 
Public Methods
 
    
      
        public 
        static 
         
         
         
        int
      
      getMode
      (int measureSpec)
    
      
    
      
  Extracts the mode from the supplied measure specification.
 
  
      Parameters
      
        
          | measureSpec
           | the measure specification to extract the mode from | 
        
      
   
  
     
 
 
    
      
        public 
        static 
         
         
         
        int
      
      getSize
      (int measureSpec)
    
      
    
      
  Extracts the size from the supplied measure specification.
 
  
      Parameters
      
        
          | measureSpec
           | the measure specification to extract the size from | 
        
      
   
  
      Returns
      - the size in pixels defined in the supplied measure specification
 
   
     
 
 
    
      
        public 
        static 
         
         
         
        int
      
      makeMeasureSpec
      (int size, int mode)
    
      
    
      
  Creates a measure specification based on the supplied size and mode.
 The mode must always be one of the following:
 
 Note: On API level 17 and lower, makeMeasureSpec's
 implementation was such that the order of arguments did not matter
 and overflow in either value could impact the resulting MeasureSpec.
 RelativeLayout was affected by this bug.
 Apps targeting API levels greater than 17 will get the fixed, more strict
 behavior.
 
  
      Parameters
      
        
          | size
           | the size of the measure specification | 
        
        
          | mode
           | the mode of the measure specification | 
        
      
   
  
      Returns
      - the measure specification based on size and mode
 
   
     
 
 
    
      
        public 
        static 
         
         
         
        String
      
      toString
      (int measureSpec)
    
      
    
      
  Returns a String representation of the specified measure
 specification.
 
  
      Parameters
      
        
          | measureSpec
           | the measure specification to convert to a String | 
        
      
   
  
      Returns
      - a String with the following format: "MeasureSpec: MODE SIZE"