internal ClipState(android.graphics.drawable.ClipDrawable.ClipState orig, android.graphics.drawable.ClipDrawable owner, android.content.res.Resources res) { if (orig != null) { if (res != null) { mDrawable = orig.mDrawable.getConstantState().newDrawable(res); } else { mDrawable = orig.mDrawable.getConstantState().newDrawable(); } mDrawable.setCallback(owner); mOrientation = orig.mOrientation; mGravity = orig.mGravity; mCheckedConstantState = mCanConstantState = true; } }
/// <summary>Create from inside an XML document.</summary> /// <remarks> /// Create from inside an XML document. Called on a parser positioned at /// a tag in an XML document, tries to create a Drawable from that tag. /// Returns null if the tag is not a valid drawable. /// </remarks> /// <exception cref="org.xmlpull.v1.XmlPullParserException"></exception> /// <exception cref="System.IO.IOException"></exception> public static android.graphics.drawable.Drawable createFromXmlInner(android.content.res.Resources r, org.xmlpull.v1.XmlPullParser parser, android.util.AttributeSet attrs) { android.graphics.drawable.Drawable drawable; string name = parser.getName(); if (name.Equals("selector")) { drawable = new android.graphics.drawable.StateListDrawable(); } else { if (name.Equals("level-list")) { drawable = new android.graphics.drawable.LevelListDrawable(); } else { if (name.Equals("layer-list")) { drawable = new android.graphics.drawable.LayerDrawable(); } else { if (name.Equals("transition")) { drawable = new android.graphics.drawable.TransitionDrawable(); } else { if (name.Equals("color")) { drawable = new android.graphics.drawable.ColorDrawable(); } else { if (name.Equals("shape")) { drawable = new android.graphics.drawable.GradientDrawable(); } else { if (name.Equals("scale")) { drawable = new android.graphics.drawable.ScaleDrawable(); } else { if (name.Equals("clip")) { drawable = new android.graphics.drawable.ClipDrawable(); } else { if (name.Equals("rotate")) { drawable = new android.graphics.drawable.RotateDrawable(); } else { if (name.Equals("animated-rotate")) { drawable = new android.graphics.drawable.AnimatedRotateDrawable(); } else { if (name.Equals("animation-list")) { drawable = new android.graphics.drawable.AnimationDrawable(); } else { if (name.Equals("inset")) { drawable = new android.graphics.drawable.InsetDrawable(); } else { if (name.Equals("bitmap")) { drawable = new android.graphics.drawable.BitmapDrawable(r); if (r != null) { ((android.graphics.drawable.BitmapDrawable)drawable).setTargetDensity(r.getDisplayMetrics ()); } } else { if (name.Equals("nine-patch")) { drawable = new android.graphics.drawable.NinePatchDrawable(); if (r != null) { ((android.graphics.drawable.NinePatchDrawable)drawable).setTargetDensity(r.getDisplayMetrics ()); } } else { throw new org.xmlpull.v1.XmlPullParserException(parser.getPositionDescription() + ": invalid drawable tag " + name); } } } } } } } } } } } } } } drawable.inflate(r, parser, attrs); return drawable; }