编辑文本视图,将图像和文本环绕在图像周围

我正在构建一个富文本编辑器。我已经实现了文本格式,如粗体斜体等,以及段落格式,如blockQuote。现在我想在编辑器中添加图像,文本应该环绕它。我已经使用 和 和 实现了所有这些。SpannableString()Spanned()StyleSpan()

我可以使用将图像添加到行中,但是内联添加它并且它只是代替了一个字符,我想要的是将其插入段落中,其余文本应环绕它。我可以通过以下代码在文本开头添加图像。但我无法将其居中对齐并向右对齐。ImageSpan()

 SpannableString string = new SpannableString("Text with icon and padding");
 string.setSpan(new IconMarginSpan(bitmap, 30), 0, string.length(),
 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

怎么做?任何例子?或者遵循什么程序?


答案 1

您可以满足您的要求,如下所示:

您可以在图像视图中设置图像,在Html.fromHtml中设置文本(“这里放置您的文本”)

gradle file:

compile 'com.github.deano2390:FlowTextView:2.0.5' 

您的 XML 布局:

<uk.co.deanwild.flowtextview.FlowTextView
    android:id="@+id/ftv"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginTop="400dip"
            android:padding="10dip"
            android:src="@drawable/android2"/>

</uk.co.deanwild.flowtextview.FlowTextView>

您的 java 文件:

FlowTextView flowTextView = (FlowTextView) findViewById(R.id.ftv);
             Spanned html = Html.fromHtml("here put your text");
             flowTextView.setText(html);

您也可以通过此链接获得帮助 https://github.com/deano2390/FlowTextView

我希望它能帮助你..!


答案 2

根据您提供的详细信息,似乎您可能正在使用本机EditText,或者您正在尝试使用自定义EditText。请提供此详细信息,以获得查询的确切解决方案。

除此之外,要使用您提到的功能(如粗体,斜体,报价和图像等)构建富文本编辑器,您可以使用此库适用于Android的RichEditor:https://github.com/wasabeef/richeditor-android。它提供了许多您可能感兴趣的功能。


推荐