Example usage for com.facebook.react.views.text ReactTextUpdate getText

List of usage examples for com.facebook.react.views.text ReactTextUpdate getText

Introduction

In this page you can find the example usage for com.facebook.react.views.text ReactTextUpdate getText.

Prototype

public Spannable getText() 

Source Link

Usage

From source file:fr.bamlab.textinput.ReactEditText.java

License:Open Source License

public void maybeSetText(ReactTextUpdate reactTextUpdate) {
    // Only set the text if it is up to date.
    if (reactTextUpdate.getJsEventCounter() < mNativeEventCount) {
        return;//from ww w .  jav  a 2s. c o m
    }

    // The current text gets replaced with the text received from JS. However, the spans on the
    // current text need to be adapted to the new text. Since TextView#setText() will remove or
    // reset some of these spans even if they are set directly, SpannableStringBuilder#replace() is
    // used instead (this is also used by the the keyboard implementation underneath the covers).
    SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(reactTextUpdate.getText());
    manageSpans(spannableStringBuilder);
    mContainsImages = reactTextUpdate.containsImages();
    mIsSettingTextFromJS = true;
    getText().replace(0, length(), spannableStringBuilder);
    mIsSettingTextFromJS = false;
}

From source file:fr.bamlab.textinput.ReactTextInputManager.java

License:Open Source License

@Override
public void updateExtraData(ReactEditText view, Object extraData) {
    if (extraData instanceof float[]) {
        float[] padding = (float[]) extraData;

        view.setPadding((int) Math.ceil(padding[0]), (int) Math.ceil(padding[1]), (int) Math.ceil(padding[2]),
                (int) Math.ceil(padding[3]));
    } else if (extraData instanceof ReactTextUpdate) {
        ReactTextUpdate update = (ReactTextUpdate) extraData;
        if (update.containsImages()) {
            Spannable spannable = update.getText();
            TextInlineImageSpan.possiblyUpdateInlineImageSpans(spannable, view);
        }/*  ww w .j  a v a  2 s  .c o m*/
        view.maybeSetText(update);
    }
}