Enhancement: add freeWidth, freeHeight, usableSizen addSubViewWithPercentWidth:AndHeight