我正在构建一个富文本编辑器。
我已经实现了像粗体斜体等文本格式以及像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);
怎么做?举个例子?或者要遵循什么程序?
答案 0 :(得分:2)
您可以满足以下要求:
您可以在imageview中设置您的图片,并在 Html.fromHtml中设置您的文字(“此处放置您的文字”)
gradle 文件:
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
我希望它可以帮助你......!
答案 1 :(得分:1)
根据您提供的详细信息,您似乎可能正在使用本机EditText,或者您尝试使用自定义EditText。请提供此详细信息以获得查询的准确解决方案。
除此之外,要使用您提到的功能(如粗体,斜体,引用和图像等)构建富文本编辑器,您可以使用此库RichEditor for Android:https://github.com/wasabeef/richeditor-android。它提供了许多您可能感兴趣的功能。
答案 2 :(得分:1)
尝试:
EditText text = (EditText)findViewById(R.id.text);
text.setCompoundDrawables(null, null, getResources().getDrawable(R.drawable.check_box), null);