本文整理汇总了C#中android.setCallback方法的典型用法代码示例。如果您正苦于以下问题:C# android.setCallback方法的具体用法?C# android.setCallback怎么用?C# android.setCallback使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android
的用法示例。
在下文中一共展示了android.setCallback方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ClipDrawable
/// <param name="orientation">
/// Bitwise-or of
/// <see cref="HORIZONTAL">HORIZONTAL</see>
/// and/or
/// <see cref="VERTICAL">VERTICAL</see>
/// </param>
public ClipDrawable(android.graphics.drawable.Drawable drawable, int gravity, int
orientation) : this(null, null)
{
mClipState.mDrawable = drawable;
mClipState.mGravity = gravity;
mClipState.mOrientation = orientation;
if (drawable != null)
{
drawable.setCallback(this);
}
}
示例2: ScaleDrawable
public ScaleDrawable(android.graphics.drawable.Drawable drawable, int gravity, float
scaleWidth, float scaleHeight) : this(null, null)
{
mScaleState.mDrawable = drawable;
mScaleState.mGravity = gravity;
mScaleState.mScaleWidth = scaleWidth;
mScaleState.mScaleHeight = scaleHeight;
if (drawable != null)
{
drawable.setCallback(this);
}
}
示例3: InsetDrawable
public InsetDrawable(android.graphics.drawable.Drawable drawable, int insetLeft,
int insetTop, int insetRight, int insetBottom) : this(null, null)
{
// Most of this is copied from ScaleDrawable.
mInsetState.mDrawable = drawable;
mInsetState.mInsetLeft = insetLeft;
mInsetState.mInsetTop = insetTop;
mInsetState.mInsetRight = insetRight;
mInsetState.mInsetBottom = insetBottom;
if (drawable != null)
{
drawable.setCallback(this);
}
}
示例4: setThumb
/// <summary>Sets the thumb that will be drawn at the end of the progress meter within the SeekBar.
/// </summary>
/// <remarks>
/// Sets the thumb that will be drawn at the end of the progress meter within the SeekBar.
/// <p>
/// If the thumb is a valid drawable (i.e. not null), half its width will be
/// used as the new thumb offset (@see #setThumbOffset(int)).
/// </remarks>
/// <param name="thumb">Drawable representing the thumb</param>
public virtual void setThumb(android.graphics.drawable.Drawable thumb)
{
bool needUpdate;
// This way, calling setThumb again with the same bitmap will result in
// it recalcuating mThumbOffset (if for example it the bounds of the
// drawable changed)
if (mThumb != null && thumb != mThumb)
{
mThumb.setCallback(null);
needUpdate = true;
}
else
{
needUpdate = false;
}
if (thumb != null)
{
thumb.setCallback(this);
// Assuming the thumb drawable is symmetric, set the thumb offset
// such that the thumb will hang halfway off either edge of the
// progress bar.
mThumbOffset = thumb.getIntrinsicWidth() / 2;
// If we're updating get the new states
if (needUpdate && (thumb.getIntrinsicWidth() != mThumb.getIntrinsicWidth() || thumb
.getIntrinsicHeight() != mThumb.getIntrinsicHeight()))
{
requestLayout();
}
}
mThumb = thumb;
invalidate();
if (needUpdate)
{
updateThumbPos(getWidth(), getHeight());
if (thumb.isStateful())
{
// Note that if the states are different this won't work.
// For now, let's consider that an app bug.
int[] state = getDrawableState();
thumb.setState(state);
}
}
}
示例5: setCheckMarkDrawable
/// <summary>Set the checkmark to a given Drawable.</summary>
/// <remarks>
/// Set the checkmark to a given Drawable. This will be drawn when
/// <see cref="isChecked()">isChecked()</see>
/// is true.
/// </remarks>
/// <param name="d">The Drawable to use for the checkmark.</param>
public virtual void setCheckMarkDrawable(android.graphics.drawable.Drawable d)
{
if (mCheckMarkDrawable != null)
{
mCheckMarkDrawable.setCallback(null);
unscheduleDrawable(mCheckMarkDrawable);
}
mNeedRequestlayout = (d != mCheckMarkDrawable);
if (d != null)
{
d.setCallback(this);
d.setVisible(getVisibility() == VISIBLE, false);
d.setState(CHECKED_STATE_SET);
setMinHeight(d.getIntrinsicHeight());
mCheckMarkWidth = d.getIntrinsicWidth();
d.setState(getDrawableState());
}
else
{
mCheckMarkWidth = 0;
}
mCheckMarkDrawable = d;
// Do padding resolution. This will call setPadding() and do a requestLayout() if needed.
resolvePadding();
}
示例6: setDrawableByLayerId
/// <summary>
/// Sets (or replaces) the
/// <see cref="Drawable">Drawable</see>
/// for the layer with the given id.
/// </summary>
/// <param name="id">The layer ID to search for.</param>
/// <param name="drawable">
/// The replacement
/// <see cref="Drawable">Drawable</see>
/// .
/// </param>
/// <returns>
/// Whether the
/// <see cref="Drawable">Drawable</see>
/// was replaced (could return false if
/// the id was not found).
/// </returns>
public virtual bool setDrawableByLayerId(int id, android.graphics.drawable.Drawable
drawable)
{
android.graphics.drawable.LayerDrawable.ChildDrawable[] layers = mLayerState.mChildren;
{
for (int i = mLayerState.mNum - 1; i >= 0; i--)
{
if (layers[i].mId == id)
{
if (layers[i].mDrawable != null)
{
if (drawable != null)
{
android.graphics.Rect bounds = layers[i].mDrawable.getBounds();
drawable.setBounds(bounds);
}
layers[i].mDrawable.setCallback(null);
}
if (drawable != null)
{
drawable.setCallback(this);
}
layers[i].mDrawable = drawable;
return true;
}
}
}
return false;
}
示例7: addLayer
/// <summary>Add a new layer to this drawable.</summary>
/// <remarks>Add a new layer to this drawable. The new layer is identified by an id.</remarks>
/// <param name="layer">The drawable to add as a layer.</param>
/// <param name="id">The id of the new layer.</param>
/// <param name="left">The left padding of the new layer.</param>
/// <param name="top">The top padding of the new layer.</param>
/// <param name="right">The right padding of the new layer.</param>
/// <param name="bottom">The bottom padding of the new layer.</param>
private void addLayer(android.graphics.drawable.Drawable layer, int id, int left,
int top, int right, int bottom)
{
android.graphics.drawable.LayerDrawable.LayerState st = mLayerState;
int N = st.mChildren != null ? st.mChildren.Length : 0;
int i = st.mNum;
if (i >= N)
{
android.graphics.drawable.LayerDrawable.ChildDrawable[] nu = new android.graphics.drawable.LayerDrawable
.ChildDrawable[N + 10];
if (i > 0)
{
System.Array.Copy(st.mChildren, 0, nu, 0, i);
}
st.mChildren = nu;
}
mLayerState.mChildrenChangingConfigurations |= layer.getChangingConfigurations();
android.graphics.drawable.LayerDrawable.ChildDrawable childDrawable = new android.graphics.drawable.LayerDrawable
.ChildDrawable();
st.mChildren[i] = childDrawable;
childDrawable.mId = id;
childDrawable.mDrawable = layer;
childDrawable.mInsetL = left;
childDrawable.mInsetT = top;
childDrawable.mInsetR = right;
childDrawable.mInsetB = bottom;
st.mNum++;
layer.setCallback(this);
}
示例8: addChild
public int addChild(android.graphics.drawable.Drawable dr)
{
int pos = mNumChildren;
if (pos >= mDrawables.Length)
{
growArray(pos, pos + 10);
}
dr.setVisible(false, true);
dr.setCallback(mOwner);
mDrawables[pos] = dr;
mNumChildren++;
mChildrenChangingConfigurations |= dr.getChangingConfigurations();
mHaveOpacity = false;
mHaveStateful = false;
mConstantPadding = null;
mPaddingChecked = false;
mComputedConstantSize = false;
return pos;
}
示例9: setForeground
/// <summary>
/// Supply a Drawable that is to be rendered on top of all of the child
/// views in the frame layout.
/// </summary>
/// <remarks>
/// Supply a Drawable that is to be rendered on top of all of the child
/// views in the frame layout. Any padding in the Drawable will be taken
/// into account by ensuring that the children are inset to be placed
/// inside of the padding area.
/// </remarks>
/// <param name="drawable">The Drawable to be drawn on top of the children.</param>
/// <attr>ref android.R.styleable#FrameLayout_foreground</attr>
public virtual void setForeground(android.graphics.drawable.Drawable drawable)
{
if (mForeground != drawable)
{
if (mForeground != null)
{
mForeground.setCallback(null);
unscheduleDrawable(mForeground);
}
mForeground = drawable;
mForegroundPaddingLeft = 0;
mForegroundPaddingTop = 0;
mForegroundPaddingRight = 0;
mForegroundPaddingBottom = 0;
if (drawable != null)
{
setWillNotDraw(false);
drawable.setCallback(this);
if (drawable.isStateful())
{
drawable.setState(getDrawableState());
}
if (mForegroundGravity == android.view.Gravity.FILL)
{
android.graphics.Rect padding = new android.graphics.Rect();
if (drawable.getPadding(padding))
{
mForegroundPaddingLeft = padding.left;
mForegroundPaddingTop = padding.top;
mForegroundPaddingRight = padding.right;
mForegroundPaddingBottom = padding.bottom;
}
}
}
else
{
setWillNotDraw(true);
}
requestLayout();
invalidate();
}
}
示例10: updateDrawable
private void updateDrawable(android.graphics.drawable.Drawable d)
{
if (mDrawable != null)
{
mDrawable.setCallback(null);
unscheduleDrawable(mDrawable);
}
mDrawable = d;
if (d != null)
{
d.setCallback(this);
if (d.isStateful())
{
d.setState(getDrawableState());
}
d.setLevel(mLevel);
mDrawableWidth = d.getIntrinsicWidth();
mDrawableHeight = d.getIntrinsicHeight();
applyColorMod();
configureBounds();
}
else
{
mDrawableWidth = mDrawableHeight = -1;
}
}