当前位置: 首页>>代码示例>>Java>>正文


Java CharacterStyle.updateDrawState方法代码示例

本文整理汇总了Java中android.text.style.CharacterStyle.updateDrawState方法的典型用法代码示例。如果您正苦于以下问题:Java CharacterStyle.updateDrawState方法的具体用法?Java CharacterStyle.updateDrawState怎么用?Java CharacterStyle.updateDrawState使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.text.style.CharacterStyle的用法示例。


在下文中一共展示了CharacterStyle.updateDrawState方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: draw

import android.text.style.CharacterStyle; //导入方法依赖的package包/类
@Override
        public void draw(@NonNull Canvas canvas, CharSequence text, @IntRange(from = 0) int start, @IntRange(from = 0) int end, float x, int top, int y, int bottom, @NonNull Paint paint) {
//            bitmapCanvas.drawColor(Color.GRAY, PorterDuff.Mode.CLEAR);
            int color = /*paint instanceof TextPaint ? ((TextPaint) paint).bgColor :*/ paint.getColor();
            bitmapCanvas.drawColor(color);
            for (CharacterStyle style : styles) {
                if (style instanceof ReplacementSpan) {
                    ((ReplacementSpan) style).draw(bitmapCanvas, text, start, end, 0, top, y, bottom, paint);
                } else if (paint instanceof TextPaint) {
                    style.updateDrawState((TextPaint) paint);
                }
            }
            paint.setXfermode(xfermode);
            bitmapCanvas.drawText(text, start, end, 0, y, paint);
            canvas.drawBitmap(bitmap, x, 0, null);
        }
 
开发者ID:baoti,项目名称:Pioneer,代码行数:17,代码来源:SpansV1.java

示例2: setupFontMetrics

import android.text.style.CharacterStyle; //导入方法依赖的package包/类
private void setupFontMetrics(CharSequence text, int start, int end, FontMetricsInt fm, Paint p) {
    txtPaint.set(p);
    final CharacterStyle[] otherSpans = ((Spanned) text).getSpans(start, end, CharacterStyle.class);
    for (CharacterStyle otherSpan : otherSpans) {
        otherSpan.updateDrawState(txtPaint);
    }
    txtPaint.setTextSize(p.getTextSize());
    if (fm != null) {
        txtPaint.getFontMetricsInt(fm);
    }
}
 
开发者ID:duyp,项目名称:mvvm-template,代码行数:12,代码来源:LabelSpan.java

示例3: draw

import android.text.style.CharacterStyle; //导入方法依赖的package包/类
@Override
public void draw(@NonNull Rect outRect, @NonNull Canvas canvas, CharSequence text, @IntRange(from = 0) int start, @IntRange(from = 0) int end, float x, int top, int y, int bottom, @NonNull Paint paint) {
    for (CharacterStyle style : styles) {
        if (style instanceof SupportSpan) {
            ((SupportSpan) style).draw(frame, canvas, text, start, end, x, top, y, bottom, paint);
        } else if (style instanceof ReplacementSpan) {
            ((ReplacementSpan) style).draw(canvas, text, start, end, x, top, y, bottom, paint);
        } else if (paint instanceof TextPaint) {
            style.updateDrawState((TextPaint) paint);
        }
    }
}
 
开发者ID:baoti,项目名称:Pioneer,代码行数:13,代码来源:Spans.java


注:本文中的android.text.style.CharacterStyle.updateDrawState方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。