【问题标题】: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);

怎么做?有什么例子吗?或者要遵循什么程序?

【问题讨论】:

  • 能否提供图片原型?这样我才能准确理解你的问题。

标签: java android android-edittext spannablestring spannable


【解决方案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_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 获得帮助

      希望对你有帮助..!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-01-13
        • 1970-01-01
        • 2014-12-18
        • 2022-06-29
        • 2018-01-19
        • 1970-01-01
        相关资源
        最近更新 更多