本文整理汇总了C#中Android.Widget.TextView.Invalidate方法的典型用法代码示例。如果您正苦于以下问题:C# TextView.Invalidate方法的具体用法?C# TextView.Invalidate怎么用?C# TextView.Invalidate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Android.Widget.TextView
的用法示例。
在下文中一共展示了TextView.Invalidate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Parse
public static ICharSequence Parse(
Context context,
List<IconFontDescriptorWrapper> iconFontDescriptors,
string text,
TextView target)
{
context = context.ApplicationContext;
// Analyse the text and replace {} blocks with the appropriate character
// Retain all transformations in the accumulator
SpannableStringBuilder spannableBuilder = new SpannableStringBuilder(text);
RecursivePrepareSpannableIndexes(context,
text, spannableBuilder,
iconFontDescriptors, 0);
bool isAnimated = HasAnimatedSpans(spannableBuilder);
if (isAnimated)
{
if (target == null)
throw new IllegalArgumentException("You can't use \"spin\" without providing the target TextView.");
if (!(target is IHasOnViewAttachListener))
throw new IllegalArgumentException(target.GetType().Name + " does not implement " +
"HasOnViewAttachListener. Please use IconTextView, IconButton or IconToggleButton.");
bool isAttached = false;
var listener = new OnViewAttachListener();
listener.Attach += (s, e) =>
{
isAttached = true;
Runnable runnable = null;
runnable = new Runnable(() =>
{
if (isAttached)
{
target.Invalidate();
ViewCompat.PostOnAnimation(target, runnable);
}
});
ViewCompat.PostOnAnimation(target, runnable);
};
listener.Detach += (s, e) => isAttached = false;
((IHasOnViewAttachListener)target).SetOnViewAttachListener(listener);
}
else
{
(target as IHasOnViewAttachListener)?.SetOnViewAttachListener(null);
}
return spannableBuilder;
}