微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android.text.SpannableStringBuilder的实例源码

项目:SciChart.Android.Examples    文件CustomTooltipsWithModifiersFragment.java   
@Override
protected void internalUpdate(XySeriesInfo seriesInfo) {
    final SpannableStringBuilder sb = new SpannableStringBuilder();

    sb.append("X: ").append(seriesInfo.getFormattedXValue()).append(StringUtil.NEW_LINE);
    sb.append("Y: ").append(seriesInfo.getFormattedYValue()).append(StringUtil.NEW_LINE);

    if (seriesInfo.seriesName != null) {
        final int start = sb.length();

        sb.append(seriesInfo.seriesName);
        sb.setSpan(new ForegroundColorSpan(ColorUtil.White),start,sb.length(),Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        sb.append(StringUtil.NEW_LINE);
    }
    sb.append(modifierName);
    setText(sb);

    // stroke 0xff4d81dd
    setSeriesColor(0xff6495ed);
}
项目:q-mail    文件NotificationContentCreator.java   
private CharSequence getMessagePreview(LocalMessage message) {
    String subject = message.getSubject();
    String snippet = getPreview(message);

    boolean isSubjectEmpty = TextUtils.isEmpty(subject);
    boolean isSnippetPresent = snippet != null;
    if (isSubjectEmpty && isSnippetPresent) {
        return snippet;
    }

    String displaySubject = getMessageSubject(message);

    SpannableStringBuilder preview = new SpannableStringBuilder();
    preview.append(displaySubject);
    if (isSnippetPresent) {
        preview.append('\n');
        preview.append(snippet);
    }

    return preview;
}
项目:mongol-library    文件MongolTextView.java   
public MongolTextView(Context context,AttributeSet attrs,int defStyleAttr) {
    super(context,attrs,defStyleAttr);

    TypedArray a = context.obtainStyledAttributes(attrs,R.styleable.MongolTextView,defStyleAttr,0);

    boolean isEditText = getDefaultEditable();
    String text = a.getString(R.styleable.MongolTextView_text);
    if (text == null) text = "";
    if (isEditText) {
        SpannableStringBuilder ssb = new SpannableStringBuilder(text);
        mTextStorage = new MongolTextStorage(ssb);
    } else {
        mTextStorage = new MongolTextStorage(text);
    }
    mTextSizePx = a.getDimensionPixelSize(R.styleable.MongolTextView_textSize,0);
    mTextColor = a.getColor(R.styleable.MongolTextView_textColor,Color.BLACK);
    mGravity = a.getInteger(R.styleable.MongolTextView_gravity,Gravity.TOP);
    a.recycle();

    mContext = context;
    init();
}
项目:Cable-Android    文件SingleRecipientNotificationBuilder.java   
public void setPrimaryMessageBody(@NonNull  Recipients threadRecipients,@NonNull  Recipient individualRecipient,@NonNull  CharSequence message,@Nullable SlideDeck slideDeck)
{
  SpannableStringBuilder stringBuilder = new SpannableStringBuilder();

  if (privacy.isdisplayContact() && (threadRecipients.isGroupRecipient() || !threadRecipients.isSingleRecipient())) {
    stringBuilder.append(Util.getBoldedString(individualRecipient.toShortString() + ": "));
  }

  if (privacy.isdisplayMessage()) {
    setContentText(stringBuilder.append(message));
    this.slideDeck = slideDeck;
  } else {
    setContentText(stringBuilder.append(context.getString(R.string.SingleRecipientNotificationBuilder_new_message)));
  }
}
项目:SDHtmlTextView    文件ImageHandler.java   
@Override
public void handleTagNode(TagNode node,SpannableStringBuilder builder,int start,int end,SpanStack stack) {
    String src = node.getAttributeByName("src");

    builder.append("\uFFFC");

    Bitmap bitmap = loadBitmap(src);

    if (bitmap != null) {
        Drawable drawable = new BitmapDrawable(bitmap);
        drawable.setBounds(0,bitmap.getWidth() - 1,bitmap.getHeight() - 1);

           stack.pushSpan( new ImageSpan(drawable),builder.length() );
    }
}
项目:LiveGiftLayout    文件ExpressionUtil.java   
public void setView(Context mContext,final View view,String content) {
    if (view != null && view instanceof ImageView) {//图片不显示GIF
        Bitmap bitmap = null;
        try {
            bitmap = BitmapFactory.decodeStream(mContext.getAssets().open(content));
        } catch (IOException e1) {
            e1.printstacktrace();
        }
        ((ImageView) view).setimageBitmap(bitmap);
    } else if (view != null && view instanceof TextView) {//文字显示GIF
        TextView gifTextView = (TextView) view;
        String tempText = "[" + content + "]";
        SpannableStringBuilder sb = prase(mContext,gifTextView,tempText);
        gifTextView.setText(sb);
    }

}
项目:Nird2    文件UiUtils.java   
public static SpannableStringBuilder getTeaser(Context ctx,Spanned body) {
    if (body.length() < TEASER_LENGTH)
        throw new IllegalArgumentException(
                "String is shorter than TEASER_LENGTH");

    SpannableStringBuilder builder =
            new SpannableStringBuilder(body.subSequence(0,TEASER_LENGTH));
    String ellipsis = ctx.getString(R.string.ellipsis);
    builder.append(ellipsis).append(" ");

    Spannable readMore = new SpannableString(
            ctx.getString(R.string.read_more) + ellipsis);
    ForegroundColorSpan fg = new ForegroundColorSpan(
            ContextCompat.getColor(ctx,R.color.briar_text_link));
    readMore.setSpan(fg,readMore.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    builder.append(readMore);

    return builder;
}
项目:RLibrary    文件RExTextView.java   
/**
 * 匹配 电话号码
 */
protected void patternPhone(SpannableStringBuilder builder,CharSequence input) {
    Matcher matcher = patternPhone.matcher(input);

    while (matcher.find()) {
        int start = matcher.start();
        int end = matcher.end();

        if (!isInOtherSpan(builder,input.length(),end)) {
            builder.setSpan(new ImageTextSpan(getContext(),ImageTextSpan.initDrawable(getTextSize()),matcher.group(),matcher.group())
                            .setonImageSpanClick(mOnImageSpanClick)
                            .setTextColor(mImageSpanTextColor),end,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        }
    }
}
项目:PSNine    文件JellyBeanSpanFixTextView.java   
/**
 * Add spaces around spans until the text is fixed,and then removes the unneeded spaces
 */
private void fixSpannedWithSpaces(SpannableStringBuilder builder,int widthMeasureSpec,int heightMeasureSpec) {
    long startFix = System.currentTimeMillis();

    FixingResult result = addspacesAroundSpansUntilFixed(builder,widthMeasureSpec,heightMeasureSpec);

    if (result.fixed) {
        removeUnneededspaces(widthMeasureSpec,heightMeasureSpec,builder,result);
    } else {
        fallbackToString(widthMeasureSpec,heightMeasureSpec);
    }

    if (HtmlTextView.DEBUG) {
        long fixDuration = System.currentTimeMillis() - startFix;
        Log.d(HtmlTextView.TAG,"fixSpannedWithSpaces() duration in ms: " + fixDuration);
    }
}
项目:RLibrary    文件RExTextView.java   
@Override
public void setText(CharSequence text,BufferType type) {
    if (isInEditMode()) {
        super.setText(text,type);
        return;
    }
    if (TextUtils.isEmpty(text)) {
        super.setText(text,type);
    } else {
        SpannableStringBuilder spanBuilder = new SpannableStringBuilder(text);
        if (needPatternUrl) {
            patternUrl(spanBuilder,text);//优先匹配
        }
        if (needPatternMention) {
            patternMention(spanBuilder,text);
        }
        if (needPatternPhone) {
            patternPhone(spanBuilder,text);
        }
        afterPattern(spanBuilder,text);
        super.setText(spanBuilder,type);
    }
}
项目:FastTextView    文件EllipseFragment.java   
@Override
  public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) {
    if (mRootView != null) {
      return mRootView;
    }
    mRootView = inflater.inflate(R.layout.ellipse_demo,container,false);
    SpannableStringBuilder spannableStringBuilder = getSpannable();
    FastTextView fastTextView = (FastTextView) mRootView.findViewById(R.id.fast_tv2);
    fastTextView.setText(spannableStringBuilder);
//    fastTextView.setCustomEllipsisspan(new ImageSpan(drawable));

    TextView tv = (TextView) mRootView.findViewById(R.id.system_tv);
    tv.setText(spannableStringBuilder);
//    tv.setMovementMethod(LinkMovementMethod.getInstance());


    return mRootView;
  }
项目:okwallet    文件RequestCoinsFragment.java   
private void updateView() {
    if (!isResumed())
        return;

    final String bitcoinRequest = determineBitcoinRequestStr(true);
    final byte[] paymentRequest = determinePaymentRequest(true);

    // update qr-code
    qrCodeBitmap = new BitmapDrawable(getResources(),Qr.bitmap(bitcoinRequest));
    qrCodeBitmap.setFilterBitmap(false);
    qrView.setimageDrawable(qrCodeBitmap);

    // update initiate request message
    final SpannableStringBuilder initiateText = new SpannableStringBuilder(
            getString(R.string.request_coins_fragment_initiate_request_qr));
    if (nfcAdapter != null && nfcAdapter.isEnabled())
        initiateText.append(' ').append(getString(R.string.request_coins_fragment_initiate_request_nfc));
    initiateRequestView.setText(initiateText);

    // focus linking
    final int activeAmountViewId = amountCalculatorLink.activeTextView().getId();
    acceptBluetoothPaymentView.setNextFocusUpId(activeAmountViewId);

    paymentRequestRef.set(paymentRequest);
}
项目:ShangHanLun    文件ATableViewAdapter.java   
@Override
public void configurePinnedHeader(View headerView,int position,int alpaha) {
    // Todo Auto-generated method stub
    TextView label = (TextView) headerView.findViewById(R.id.textLabel);
    NSIndexPath ip = getIndexPath(position);
    curSection = ip.getSection();
    String t = mTableView.getDataSource().titleForHeaderInSection(
            mTableView,curSection);
    if (t != null) {
        label.setText(t);
    } else {
        SpannableStringBuilder buider = mTableView.getDataSource()
                .spannerbleTitleForHeaderInSection(mTableView,curSection);
        label.setText(buider);
    }
    // huanghai
    label.setTextColor(Color.BLACK);
    label.setGravity(Gravity.CENTER_VERTICAL);
}
项目:sealtalk-android-master    文件CharacterParser.java   
public SpannableStringBuilder getColoredChattingRecord(String filterStr,MessageContent messageContent) {
    SpannableStringBuilder messageText = new SpannableStringBuilder();
    if (messageContent instanceof TextMessage) {
        TextMessage textMessage = (TextMessage) messageContent;
        String textMessageContent = textMessage.getContent();
        messageText = getomitColored(filterStr,textMessageContent,0);
    }
    if (messageContent instanceof RichContentMessage) {
        RichContentMessage richContentMessage = (RichContentMessage) messageContent;
        String messageTitle = richContentMessage.getTitle();
        messageText = getomitColored(filterStr,messageTitle,1);
        if (messageText.length() == 0) {
            SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder("[链接] ");
            spannableStringBuilder.append(messageTitle);
            messageText = spannableStringBuilder;
        }
    }
    if (messageContent instanceof FileMessage) {
        FileMessage fileMessage = (FileMessage) messageContent;
        String fileName = fileMessage.getName();
        messageText = getomitColored(filterStr,fileName,2);
    }
    return messageText;
}
项目:SciChart.Android.Examples    文件CustomTooltipsWithModifiersFragment.java   
@Override
protected void internalUpdate(XySeriesInfo seriesInfo) {
    final SpannableStringBuilder sb = new SpannableStringBuilder();
    sb.append(modifierName).append(StringUtil.NEW_LINE);

    if (seriesInfo.seriesName != null) {
        sb.append(seriesInfo.seriesName);
        sb.setSpan(new ForegroundColorSpan(ColorUtil.Black),Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        sb.append(StringUtil.NEW_LINE);
    }

    sb.append("X: ").append(seriesInfo.getFormattedXValue());
    sb.append(" Y: ").append(seriesInfo.getFormattedYValue());

    setText(sb);

    // stroke 0xffff4500
    setSeriesColor(0xffe2460c);
}
项目:lex    文件LexList.java   
@NonNull
private CharSequence makeThreeOrMoreItems() {
    if (separator == null) {
        throw new LexNoSeparatorException();
    }

    SpannableStringBuilder sb = new SpannableStringBuilder(getWrappedItem(0));
    for (int i = 1; i < items.length; i++) {
        if (i == items.length - 1 && lastItemSeparator != null) {
            sb.append(lastItemSeparator);
        } else {
            sb.append(separator);
        }
        sb.append(getWrappedItem(i));
    }
    return sb;
}
项目:Phoenix-for-VK    文件PreferencesFragment.java   
private void disableOnlyFullAppPrefs() {
    String fullOnly = " FULL ONLY ";
    int color = Utils.adjustAlpha(CurrentTheme.getColorAccent(getActivity()),100);

    for (String name : AppPrefs.ONLY_FULL_APP_PREFS) {
        Preference preference = findPreference(name);
        if (preference != null) {
            preference.setEnabled(false);

            CharSequence summary = TextUtils.isEmpty(preference.getTitle()) ? "" : preference.getTitle();
            summary = fullOnly + " " + summary;

            Spannable spannable = SpannableStringBuilder.valueOf(summary);

            BackgroundColorSpan span = new BackgroundColorSpan(color);
            ForegroundColorSpan span1 = new ForegroundColorSpan(Color.WHITE);

            spannable.setSpan(span,fullOnly.length(),Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            spannable.setSpan(span1,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            preference.setTitle(spannable);
        }
    }
}
项目:PeSanKita-android    文件SingleRecipientNotificationBuilder.java   
public void setPrimaryMessageBody(@NonNull  Recipients threadRecipients,@Nullable SlideDeck slideDeck)
{
  SpannableStringBuilder stringBuilder = new SpannableStringBuilder();

  if (privacy.isdisplayContact() && (threadRecipients.isGroupRecipient() || !threadRecipients.isSingleRecipient())) {
    stringBuilder.append(Util.getBoldedString(individualRecipient.toShortString() + ": "));
  }

  if (privacy.isdisplayMessage()) {
    setContentText(stringBuilder.append(message));
    this.slideDeck = slideDeck;
  } else {
    setContentText(stringBuilder.append(context.getString(R.string.SingleRecipientNotificationBuilder_new_message)));
  }
}
项目:PeSanKita-android    文件SingleRecipientNotificationBuilder.java   
public void addMessageBody(@NonNull Recipients threadRecipients,@NonNull Recipient individualRecipient,@Nullable CharSequence messageBody)
{
  SpannableStringBuilder stringBuilder = new SpannableStringBuilder();

  if (privacy.isdisplayContact() && (threadRecipients.isGroupRecipient() || !threadRecipients.isSingleRecipient())) {
    stringBuilder.append(Util.getBoldedString(individualRecipient.toShortString() + ": "));
  }

  if (privacy.isdisplayMessage()) {
    messageBodies.add(stringBuilder.append(messageBody == null ? "" : messageBody));
  } else {
    messageBodies.add(stringBuilder.append(context.getString(R.string.SingleRecipientNotificationBuilder_new_message)));
  }
}
项目:PeSanKita-android    文件ComposeText.java   
public void setHint(@NonNull String hint,@Nullable CharSequence subHint) {
  this.hint = new SpannableString(hint);
  this.hint.setSpan(new RelativeSizeSpan(0.8f),hint.length(),Spannable.SPAN_INCLUSIVE_INCLUSIVE);

  if (subHint != null) {
    this.subHint = new SpannableString(subHint);
    this.subHint.setSpan(new RelativeSizeSpan(0.8f),subHint.length(),Spannable.SPAN_INCLUSIVE_INCLUSIVE);
  } else {
    this.subHint = null;
  }

  if (this.subHint != null) {
    super.setHint(new SpannableStringBuilder().append(ellipsizetoWidth(this.hint))
                                              .append("\n")
                                              .append(ellipsizetoWidth(this.subHint)));
  } else {
    super.setHint(ellipsizetoWidth(this.hint));
  }
}
项目:PeSanKita-android    文件FromTextView.java   
public void setText(Recipients recipients,boolean read) {
  int        attributes[] = new int[]{R.attr.conversation_list_item_count_color};
  TypedArray colors       = getContext().obtainStyledAttributes(attributes);
  String     fromString   = recipients.toShortString();

  int typeface;

  if (!read) {
    typeface = Typeface.BOLD;
  } else {
    typeface = Typeface.norMAL;
  }

  SpannableStringBuilder builder = new SpannableStringBuilder(fromString);
  builder.setSpan(new StyleSpan(typeface),builder.length(),Spannable.SPAN_INCLUSIVE_EXCLUSIVE);

  colors.recycle();

  setText(builder);

  if      (recipients.isBlocked()) setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_block_grey600_18dp,0);
  else if (recipients.isMuted())   setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_volume_off_grey600_18dp,0);
  else                             setCompoundDrawablesWithIntrinsicBounds(0,0);
}
项目:Aequorea    文件RichText.java   
/**
 * 生成富文本
 *
 * @return Spanned
 */
private CharSequence generateRichText() {
    TextView textView = textViewSoftReference.get();
    if (textView == null) {
        return null;
    }
    if (config.richType != RichType.MARKDOWN) {
        analyzeImages(config.source);
    } else {
        imageHolderMap = new HashMap<>();
    }
    SpannableStringBuilder spannableStringBuilder = null;
    if (config.cacheType > CacheType.NONE) {
        spannableStringBuilder = RichTextPool.getPool().loadCache(config.source);
    }
    if (spannableStringBuilder == null) {
        spannableStringBuilder = parseRichText();
    }
    richText = new SoftReference<>(spannableStringBuilder);
    config.imageGetter.registerImageLoadNotify(this);
    cachedSpannedParser.setAccentColor(getAccentColor(textView.getContext()));
    count = cachedSpannedParser.parse(spannableStringBuilder,this,config);
    return spannableStringBuilder;
}
项目:Cable-Android    文件FromTextView.java   
public void setText(Recipients recipients,0);
}
项目:browser    文件CCPActivityBase.java   
/**
 *
 */
protected SpannableString buildActionTitle() {
    int dimensionPixelSize = mActionBaractivity.getResources().getDimensionPixelSize(R.dimen.BigTextSize);

    int mutIndex = 0;
    String format = "%s";
    if(isMute) {
        format = format + " #";
        mutIndex += 2;
    }

    SpannableString spannableString = new SpannableString(mTitleText);
    //EmoticonUtil.gettextformat(mActionBaractivity,String.format(format,new Object[]{mTitleText}),dimensionPixelSize);
    if(isMute) {
        if(mMuteIcon == null) {
            mMuteIcon = getTitleIconTips(dimensionPixelSize,R.drawable.chat_mute_notify_title_icon);
        }
        int length = spannableString.length() - mutIndex + 1;
        spannableString.setSpan(mMuteIcon,length,length + 1,SpannableStringBuilder.SPAN_POINT_MARK);
    }
    return spannableString;
}
项目:LucaHome-AndroidApplication    文件ShoppingListEditactivity.java   
/**
 * Build a custom error text
 */
private SpannableStringBuilder createErrorText(@NonNull String errorString) {
    ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(Color.RED);
    SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(errorString);
    spannableStringBuilder.setSpan(foregroundColorSpan,errorString.length(),0);
    return spannableStringBuilder;
}
项目:xifan    文件PatternUtils.java   
private static SpannableStringBuilder getUrlTextSpannableString(Context context,String source,int size) {
    SpannableStringBuilder builder = new SpannableStringBuilder(source);
    String prefix = " ";
    builder.replace(0,prefix.length(),prefix);
    Drawable drawable = context.getResources().getDrawable(R.mipmap.ic_status_link);
    drawable.setBounds(0,size,size);
    builder.setSpan(new VerticalImageSpan(drawable),source.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    builder.append(App.getInstance().getString(R.string.text_url_link));
    return builder;
}
项目:mongol-library    文件MongolTextStorage.java   
@Override
public void removeSpan(Object what) {
    if (!(mUnicodeText instanceof Spanned)) {
        return;
    }
    if (!(mUnicodeText instanceof SpannableStringBuilder)) {
        return;
    }
    ((SpannableStringBuilder) mUnicodeText).removeSpan(what);
    ((SpannableStringBuilder) mGlyphText).removeSpan(what);

    final int length = mUnicodeText.length();
    if (mchangelistener != null)
        mchangelistener.onSpanChanged((Spanned) mUnicodeText,what,length);
}
项目:BookLoadingView    文件JumpingBeans.java   
private JumpingBeansspan[] getJumpingBeansspans(SpannableStringBuilder sbb) {
    JumpingBeansspan[] spans;
    if (waveCharDelay == -1) {
        waveCharDelay = loopDuration / (3 * (endPos - startPos));
    }

    spans = new JumpingBeansspan[endPos - startPos];
    for (int pos = startPos; pos < endPos; pos++) {
        JumpingBeansspan jumpingBean =
                new JumpingBeansspan(textView,loopDuration,pos - startPos,waveCharDelay,animRange);
        sbb.setSpan(jumpingBean,pos,pos + 1,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        spans[pos - startPos] = jumpingBean;
    }
    return spans;
}
项目:LucaHome-AndroidApplication    文件WirelessSwitchEditactivity.java   
/**
 * Build a custom error text
 */
private SpannableStringBuilder createErrorText(@NonNull String errorString) {
    ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(Color.RED);
    SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(errorString);
    spannableStringBuilder.setSpan(foregroundColorSpan,0);
    return spannableStringBuilder;
}
项目:Android-Spans    文件Span.java   
android.text.Spannable build(SpannableStringBuilder builder) {
    if (nodes != null) {
        for (Object child : nodes) {
            if (child instanceof Span) {
                ((Span) child).build(builder);
            } else {
                builder.append(child.toString());
            }
        }
    }
    return builder;
}
项目:Slide-RSS    文件SpoilerRobotoTextView.java   
private static SpannableStringBuilder removeNewlines(SpannableStringBuilder s) {
    int start = 0;
    int end = s.length();
    while (start < end && Character.isWhitespace(s.charat(start))) {
        start++;
    }

    while (end > start && Character.isWhitespace(s.charat(end - 1))) {
        end--;
    }

    return (SpannableStringBuilder) s.subSequence(start,end);
}
项目:QMUI_Android    文件QMUISpanHelper.java   
/**
 * 在text左边或者右边添加icon,* 认TextView添加leftDrawable或rightDrawable不能适应TextView match_parent的情况
 *
 * @param left true 则在文字左边添加 icon,false 则在文字右边添加 icon
 * @param text 文字内容
 * @param icon 需要被添加的 icon
 * @return 返回带有 icon 的文字
 */
public static CharSequence generateSideIconText(boolean left,int iconPadding,CharSequence text,Drawable icon) {
    if (icon == null) {
        return text;
    }

    icon.setBounds(0,icon.getIntrinsicWidth(),icon.getIntrinsicHeight());
    String iconTag = "[icon]";
    SpannableStringBuilder builder = new SpannableStringBuilder();
    int start,end;
    if (left) {
        start = 0;
        builder.append(iconTag);
        end = builder.length();
        builder.append(text);
    } else {
        builder.append(text);
        start = builder.length();
        builder.append(iconTag);
        end = builder.length();
    }

    QMUIMarginImageSpan imageSpan;

    if (left) {
        imageSpan = new QMUIMarginImageSpan(icon,QMUIAlignMiddleImageSpan.ALIGN_MIDDLE,iconPadding);
    } else {
        imageSpan = new QMUIMarginImageSpan(icon,iconPadding,0);
    }

    builder.setSpan(imageSpan,Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
    imageSpan.setAvoidSuperChangeFontMetrics(true);
    return builder;
}
项目:mongol-library    文件MongolTextStorage.java   
@Override
public void setFilters(InputFilter[] filters) {
    if (!(mUnicodeText instanceof SpannableStringBuilder)) {
        return;
    }
    // Todo: this is untested!
    int oldLength = mUnicodeText.length();
    ((SpannableStringBuilder) mUnicodeText).setFilters(filters);
    ((SpannableStringBuilder) mGlyphText).setFilters(filters);
    if (mchangelistener != null)
        mchangelistener.onTextChanged(mUnicodeText,oldLength,mUnicodeText.length());
}
项目:SciChart.Android.Examples    文件CustomizationRolloverModifierTooltipsFragment.java   
@Override
protected boolean updateInternal(AxisInfo axisInfo) {
    final SpannableStringBuilder sb = new SpannableStringBuilder();
    sb.append("Axis ID: ").append(axisInfo.axisId).append(StringUtil.NEW_LINE);
    sb.append("Value: ").append(axisInfo.axisFormattedDataValue);

    setText(sb);

    return true;
}
项目:orgzly-android    文件UserTimeFormatter.java   
public CharSequence formatAll(OrgRange time) {
    SpannableStringBuilder s = new SpannableStringBuilder();

    s.append(formatAll(time.getStartTime()));

    if (time.getEndTime() != null) {
        s.append(" — ");
        s.append(formatAll(time.getEndTime()));
    }

    return s;
}
项目:RNLearn_Project1    文件RCTVirtualText.java   
@Override
protected void performApplySpans(SpannableStringBuilder builder,int begin,boolean isEditable) {
  mFontStylingSpan.freeze();

  // All spans will automatically extend to the right of the text,but not the left - except
  // for spans that start at the beginning of the text.
  final int flag;
  if (isEditable) {
    flag = Spannable.SPAN_EXCLUSIVE_EXCLUSIVE;
  } else {
    flag = begin == 0 ?
        Spannable.SPAN_INCLUSIVE_INCLUSIVE :
        Spannable.SPAN_EXCLUSIVE_INCLUSIVE;
  }

  builder.setSpan(
      mFontStylingSpan,begin,flag);

  if (mShadowStyleSpan.getColor() != 0 && mShadowStyleSpan.geTradius() != 0) {
    mShadowStyleSpan.freeze();

    builder.setSpan(
        mShadowStyleSpan,flag);
  }

  for (int i = 0,childCount = getChildCount(); i < childCount; ++i) {
    FlatTextShadowNode child = (FlatTextShadowNode) getChildAt(i);
    child.applySpans(builder,isEditable);
  }
}
项目:anitrend-app    文件MarkDown.java   
private static SpannableStringBuilder fromMD(String content) {
    if(content == null)
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
            return (SpannableStringBuilder) Html.fromHtml("<b>No content available</b>",Html.FROM_HTML_MODE_COMPACT | Html.FROM_HTML_OPTION_USE_CSS_COLORS | Html.FROM_HTML_SEParaTOR_LINE_BREAK_LIST);
        else return (SpannableStringBuilder) Html.fromHtml("<b>No content available</b>");
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
        return (SpannableStringBuilder) Html.fromHtml(Processor.process(content),Html.FROM_HTML_MODE_COMPACT | Html.FROM_HTML_OPTION_USE_CSS_COLORS | Html.FROM_HTML_SEParaTOR_LINE_BREAK_LIST);
    else return (SpannableStringBuilder) Html.fromHtml(Processor.process(content));
}
项目:QMark    文件EditSourcelistadapter.java   
@Override
public void bind(int position,EditSourceListBean data) {
    mFB.display(mImgBg,data.imgBgUrl);
    mFB.display(mImgCatgy,data.ImgCatgyUrl);
    mTextLeft.setText(data.textLeft);
    Resources resources = getView().getResources();
    SpannableStringBuilder spans = new SpannableStringBuilder(resources.getString(R.string.i_m_category_text_sign_count,data.textSignSize));
    spans.setSpan(new ForegroundColorSpan(resources.getColor(R.color.text_title_orange)),2,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    spans.setSpan(new ForegroundColorSpan(resources.getColor(R.color.text_title_orange)),spans.length() - 3,spans.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    mTextSignSize.setText(spans);
}
项目:Espresso    文件CompanyDetailFragment.java   
@Override
public void setCompanyName(String name) {
    String companyName = getString(R.string.company_name) + "\n" + name;
    Spannable spannable = new SpannableStringBuilder(companyName);
    spannable.setSpan(new StyleSpan(Typeface.BOLD),companyName.length() - name.length() - 1,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    spannable.setSpan(new StyleSpan(Typeface.norMAL),companyName.length() - name.length(),companyName.length(),Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    textViewCompanyName.setText(spannable);
}
项目:Espresso    文件CompanyDetailFragment.java   
@Override
public void setCompanyWebsite(String website) {
    this.website = website;
    String ws = getString(R.string.official_website) + "\n" + website;
    Spannable spannable = new SpannableStringBuilder(ws);
    spannable.setSpan(new StyleSpan(Typeface.BOLD),ws.length() - website.length() - 1,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    spannable.setSpan(new URLSpan(website),ws.length() - website.length(),ws.length(),Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    textViewWebsite.setText(spannable);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。