使用图像和环绕图像的文本编辑文本视图
Posted
技术标签:
【中文标题】使用图像和环绕图像的文本编辑文本视图【英文标题】:Edit text view with image and text wrapped around image 【发布时间】:2018-08-29 14:13:46 【问题描述】:我正在构建一个富文本编辑器。
我已经实现了像粗斜体这样的文本格式以及像 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】:尝试:
EditText text = (EditText)findViewById(R.id.text);
text.setCompoundDrawables(null, null, getResources().getDrawable(R.drawable.check_box), null);
【讨论】:
【参考方案2】:根据您提供的详细信息,您可能正在使用本机 EditText,或者您正在尝试使用自定义 EditText。请提供此详细信息以获得您的查询的确切解决方案。
除此之外,要使用您提到的功能(如粗体、斜体、引号和图像等)构建富文本编辑器,您可以使用此库 RichEditor for android:https://github.com/wasabeef/richeditor-android。它提供了许多您可能感兴趣的功能。
【讨论】:
【参考方案3】:您可以通过以下方式满足您的要求:
您可以在 imageview 中设置图像,在 Html.fromHtml("here put your text")中设置文本
gradle 文件:
compile 'com.github.deano2390:FlowTextView:2.0.5'
您的 XML 布局:
<uk.co.deanwild.flowtextview.FlowTextView
android:id="@+id/ftv"
android:layout_
android:layout_ >
<ImageView
android:layout_
android:layout_
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 获得帮助
希望对你有帮助..!
【讨论】:
以上是关于使用图像和环绕图像的文本编辑文本视图的主要内容,如果未能解决你的问题,请参考以下文章