Page 1198 - 3-3
P. 1198

import android.graphics.drawable.Drawable;
          import android.text.Editable;
          import android.text.TextWatcher;
          import android.util.AttributeSet;
          import android.util.Log;
          import android.util.TypedValue;
          import android.view.Gravity;
          import android.view.View;
          import android.view.ViewGroup;
          import android.widget.EditText;
          import android.widget.FrameLayout;
          import android.widget.ImageView;
          import android.widget.ImageView.ScaleType;
          import android.widget.TextView;


          public class ScalableLayout extends FrameLayout {
              private static final float Default_Scale_Base_Width = 100f;
              private static final float Default_Scale_Base_Height = 100f;
          //    private static final int Default_Scale_Base_BasePosition = Gravity.LEFT | Gravity.TOP;


              private static final float Default_Scale_Left = 0f;
              private static final int Default_Scale_Left_BasePosition = 0;
              private static final float Default_Scale_Top = 0f;
              private static final int Default_Scale_Top_BasePosition = 0;
              private static final float Default_Scale_Width = 100f;
              private static final float Default_Scale_Height = 100f;
              private static final float Default_TextView_WrapContent_Scale_MaxWidth = -1f;
              private static final float Default_Scale_TextSize = 100f;
              private float mScale_Root_Width     = Default_Scale_Base_Width;
              private float mScale_Root_Height    = Default_Scale_Base_Height;
              private float mRatioOfWidthHeight   = mScale_Root_Height / mScale_Root_Width;
          //    private int mScale_Root_BasePosition = Default_Scale_Base_BasePosition;
              public float getScaleWidth() { return mScale_Root_Width; }
              public float getScaleHeight() { return mScale_Root_Height; }


              public void setScaleWidth(float pWidth) { setScaleSize(pWidth, mScale_Root_Height); }
              public void setScaleHeight(float pHeight) { setScaleSize(mScale_Root_Width, pHeight); }
              public void setScaleSize(float pWidth, float pHeight) {
                  setScaleSize(pWidth, pHeight, true);
              }
              private void setScaleSize(float pWidth, float pHeight, boolean pWithInvalidate) {
                  mScale_Root_Width = pWidth;
                  mScale_Root_Height = pHeight;
                  mRatioOfWidthHeight = mScale_Root_Height / mScale_Root_Width;
                  if(pWithInvalidate) {


                                                        - 1198 -
   1193   1194   1195   1196   1197   1198   1199   1200   1201   1202   1203